Dựa trên trọng tâm trước đây của bạn về đồng bộ hóa PTP cảm biến kép của Linux, các bản cập nhật trình điều khiển card mạng và điều chỉnh dấu thời gian phần cứng, nếu dấu thời gian phần cứng không hoạt động, bạn có thể khắc phục sự cố bằng cách sử dụng bốn bước cốt lõi sau:
I. Kiểm tra mô-đun trình điều khiển và hạt nhân
Kiểm tra tải trình điều khiển
Thực thi `lsmod|grep igb` (sử dụng card mạng Intel làm ví dụ) để xác nhận rằng mô-đun trình điều khiển đã được tải.
Xác minh sự phù hợp của phiên bản
Chạy `ethtool -i eth0` để xác nhận rằng phiên bản trình điều khiển hỗ trợ dấu thời gian phần cứng. Trình điều khiển cũ hơn có thể thiếu tính năng này và cần được cập nhật lên phiên bản chính thức ổn định mới nhất.
II. Xác nhận khả năng phần cứng của card mạng
Thực thi lệnh
Tiêu chí phán xét
SSOF_TIMESTAMPING_TX_HARDWARE và SOF_TIMESTAMPING_RX_HARDWARE** phải hiển thị. Nếu chúng bị thiếu, điều đó có nghĩa là bản thân phần cứng card mạng không hỗ trợ nó hoặc chức năng liên quan bị tắt trong BIOS.
III. Kiểm tra thông số cấu hình PTP
Xác minh tệp cấu hình: Kiểm tra `/etc/linuxptp/ptp4l.conf` và xác nhận rằng `time_stamping` được đặt thành `hardware` (giá trị mặc định) và `phc_index` trỏ đến thiết bị đồng hồ PTP chính xác (ví dụ: `/dev/ptp0`).
Khắc phục sự cố xuống cấp phần mềm: Nếu nhật ký hiển thị "quay lại dấu thời gian của phần mềm", hãy kiểm tra xem liệu không đủ quyền hoặc thiếu nút thiết bị có gây ra lỗi cuộc gọi phần cứng hay không.
IV. Khắc phục sự cố hệ thống và quyền
Kiểm tra quyền: Đảm bảo rằng `ptp4l` chạy với quyền root; người dùng thông thường sẽ không thể truy cập các thiết bị `/dev/ptp*`.
Can thiệp dịch vụ xung đột: Vô hiệu hóa cấu hình tự động của card mạng bằng NetworkManager hoặc các công cụ quản lý mạng khác để ngăn chúng đặt lại các thông số card mạng và khiến dấu thời gian phần cứng trở nên không hợp lệ.
Quá trình này có thể nhanh chóng xác định xem sự cố có phải do trình điều khiển, phần cứng, cấu hình hoặc quyền hệ thống gây ra hay không, đồng thời khôi phục chức năng dấu thời gian của phần cứng.

