[Linuxptp-users] "poll tx timestamp timeout", problem since v1.2, igb, stmmac
PTP IEEE 1588 stack for Linux
Brought to you by:
rcochran
From: Jean-Baptiste M. <jea...@pa...> - 2013-10-25 14:27:04
|
Hi, I know this "poll tx timestamp timeout" have been discussed around here[1] and on e1000-devel previously, without clear conclusion (to me), and no sure to which list this should go, but here is my case: I'm using ptp4l git head with hardware time stamping, on - Intel i210 with igb driver, - Intel i210 with igb_avb driver from Open-AVB project[2], - stmmac. Intel igb_avb is fine, yet both vanilla igb and stmmac fail with a "poll tx timestamp timeout" 100% reproducible. Increasing the tx_timestamp_timeout does not help. Here is a typical trace with the igb driver on a i210 NIC: $ sudo ./ptp4l -i eth2-igb -m -l 7 ptp4l[457162.487]: selected /dev/ptp0 as PTP clock ptp4l[457162.487]: PI servo: sync interval 1.000 kp 0.700 ki 0.300000 ptp4l[457162.488]: driver changed our HWTSTAMP options ptp4l[457162.489]: tx_type 1 not 1 ptp4l[457162.489]: rx_filter 1 not 12 ptp4l[457162.489]: port 1: INITIALIZING to LISTENING on INITIALIZE ptp4l[457162.489]: port 0: INITIALIZING to LISTENING on INITIALIZE ptp4l[457168.489]: port 1: announce timeout ptp4l[457168.489]: port 1: LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES ptp4l[457168.489]: selected best master clock a0369f.fffe.1c38a8 ptp4l[457168.489]: assuming the grand master role ptp4l[457168.490]: port 1: master tx announce timeout ptp4l[457168.490]: port 1: setting asCapable ptp4l[457169.489]: port 1: master sync timeout ptp4l[457169.490]: poll tx timestamp timeout ptp4l[457169.490]: port 1: send sync failed ptp4l[457169.490]: port 1: MASTER to FAULTY on FAULT_DETECTED (FT_UNSPECIFIED) ptp4l[457169.491]: waiting 2^{4} seconds to clear fault on port 1 ... My first trial with going back to v1.1 was succesful, but just by luck: 9 times out of 10 I have a "recvmsg tx timestamp failed: Resource temporarily unavailable". The same goes going back to 2ec3829, just before 76e10e9 "ptp4l: Use poll() instead of a try-again loop". Increasing the tx_timestamp_retries does not help. On the kernel side, for driver/ptp/ I'm on 0d8c3e7 "ptp_pch: fix error handling in pch_probe()" for stmmac, Debian 3.10.7-1 for i210. To this point, I think this is a hardware driver issue (not really ptp4l nor ptp driver, and hoping this is not a combination of the 3) but any suggestion would be welcome. [1] https://sourceforge.net/mailarchive/forum.php?thread_name=20130815062826.GB4679%40netboy&forum_name=linuxptp-devel [2] https://github.com/intel-ethernet/Open-AVB -- JB |