PTP on SRIOV VF Connect-x 6 DX

I’m trying to synchronize my VM using ptp4l using Connect-x 6 DX VF
platform: VMware ESXi 7.0.3g

  1. when using PCI passthrough device to the VM, there is no issue and ptp4l is running normally, timestamping is done.

  2. When using SRIOV VF (interface name is splane0)

~]$ ethtool -T splane0
Time stamping parameters for splane0:
Capabilities:
hardware-transmit (SOF_TIMESTAMPING_TX_HARDWARE)
hardware-receive (SOF_TIMESTAMPING_RX_HARDWARE)
hardware-raw-clock (SOF_TIMESTAMPING_RAW_HARDWARE)
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes:
off (HWTSTAMP_TX_OFF)
on (HWTSTAMP_TX_ON)
Hardware Receive Filter Modes:
none (HWTSTAMP_FILTER_NONE)
all (HWTSTAMP_FILTER_ALL)

~]$ cat /etc/ptp4l.conf
[global]
clock_type OC
time_stamping hardware
slaveOnly 1
priority1 128
priority2 128
domainNumber 24
logging_level 6
verbose 1
use_syslog 0
step_threshold 0.002
logAnnounceInterval -3
logSyncInterval -4
logMinDelayReqInterval -4
delay_mechanism E2E
network_transport L2
tsproc_mode raw
tx_timestamp_timeout 100

~]$ sudo /usr/sbin/ptp4l -f /etc/ptp4l.conf -i splane0
ptp4l[8226.934]: selected /dev/ptp0 as PTP clock
ptp4l[8226.950]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[8226.950]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[8227.072]: port 1: new foreign master 8c47be.ffff.d34ac1-4
ptp4l[8227.396]: selected local clock 005056.fffe.33c210 as best master
ptp4l[8227.574]: selected best master clock 8c47be.ffff.d34ac1
ptp4l[8227.574]: port 1: LISTENING to UNCALIBRATED on RS_SLAVE
ptp4l[8228.262]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8228.510]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8228.574]: rms 36852582060 max 36852585277 freq -11737677 +/- 8933 delay 752 +/- 1329
ptp4l[8228.760]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8229.014]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8229.262]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8229.510]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8229.574]: rms 36852585199 max 36852586827 freq -11744817 +/- 3659 delay 386 +/- 27
ptp4l[8229.760]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8230.136]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8230.384]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8230.638]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8230.702]: rms 36852588999 max 36852590657 freq -11757884 +/- 4141 delay 388 +/- 36
ptp4l[8230.886]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8231.262]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8231.510]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8231.760]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8231.760]: rms 36852592758 max 36852594423 freq -11770817 +/- 3519 delay 386 +/- 35
ptp4l[8232.014]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8232.262]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8232.510]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8232.760]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8232.824]: rms 36852596257 max 36852598081 freq -11783603 +/- 4253 delay 371 +/- 29
ptp4l[8233.136]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8233.390]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8233.638]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8233.886]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8233.886]: rms 36852600094 max 36852601785 freq -11797722 +/- 4289 delay 366 +/- 30
ptp4l[8234.136]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8234.390]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8234.638]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8234.886]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8234.886]: rms 36852603596 max 36852605259 freq -11811406 +/- 4131 delay 370 +/- 27
ptp4l[8235.136]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8235.390]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8235.638]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8235.950]: rms 36852607141 max 36852608937 freq -11823798 +/- 3972 delay 375 +/- 20
ptp4l[8236.014]: clockcheck: clock jumped backward or running slower than expected!
ptp4l[8236.262]: clockcheck: clock jumped backward or running slower than expected!

rms stays high there no actual change in time.

will appreciate any feedback or ideas regarding this behavior.

Hi Moshe,

Thank you for posting your query on our community.

Based on my internal check within the system, I see that you have already opened a support ticket (00552101: Connectx-6 DX HW time stamping not happening on VF) wherein you are working on getting the Enterprise Support Contract in place.

I would like to share the following update regarding the issue described:

For VMWare we are only using BlueField-2 HW solution - the PTP is running inside the DPU which allow all the VMs to get accurate time with no dependency on the ESXi.

Unfortunately, we do not test PTP on VM’s . But, you need to ensure that each VM will need to run PTP client.

If further troubleshooting is needed with current configuration you are using, I would like to request working via the support ticket once the Support contract is Active.

Thanks,
Namrata.