Loopback Timestamping Errors

Hello All,
I have a dual-port ConnectX-4 card, and I have a Loopback connection that is one port is a PTP master, and one port is a PTP slave. I am using the linuxptp daemon. Some observations I got are deviating from expected behavior and also from the behavior of other similar dual-port cards:

  1. The PTP offset reported in this setup is not constant. Usually (for other cards), since the same crystal oscillator drives both the ports, the PTP daemon reports a constant offset.

  2. The PTP offset becomes much worse when additional background UDP traffic (iperf3) is running on the same ports.

Is this expected behaviour of this card? If not, an explanation could be that HW timestamping is not being used. However, the card indeed supports it and the PTP Daemon uses HW timestamping by default (this is also configured in the PTP Config file.)

1 Like

Hi Yash,

Please confirm if the below requirements are met:

a. Is the system running MLNX OFED driver? If not, please install the latest version 5.5-1.0.3.2 from —> Linux InfiniBand Drivers

b. Please confirm phc2sys is running based on our community article —> https://support.mellanox.com/s/article/Running-Linux-PTP-with-ConnectX-4-ConnectX-5-ConnectX-6

Thanks,
Namrata.

Dear Namrata,

Thanks for your reply.

a. Yes. I verified this once again. Please check the attached screenshot.
b. I think phc2sys doesn’t matter here, as I want to only look at the hardware timestamps of two PTP hardware clocks on the same NIC. Its a loopback setup.

When looking over your community article mentioned by you. I see a different output of ethtool -T enpxxxx as compared to the article. In particular, I don’t see the following:

software-transmit (SOF_TIMESTAMPING_TX_SOFTWARE)
software-receive (SOF_TIMESTAMPING_RX_SOFTWARE)
software-system-clock (SOF_TIMESTAMPING_SOFTWARE)

Could this be the issue? I am looking only at the hardware timestamping capabilities and therefore software timestamping should not matter.

Hi Yash,

Based on the check on internal system, the output of ethtool -T , the output is same as seen on your system. In order to debug further, I would like to request opening a support ticket which requires an active contract level. The contracts team can be reached at networking-contracts@nvidia.com and support ticket can be opened by emailing Networking-support@nvidia.com

Thanks,
Namrata.