[Intel-wired-lan] [PATCH v4 15/15] ixgbe: check for Tx timestamp timeouts during watchdog

Bowers, AndrewX andrewx.bowers at intel.com
Thu May 4 22:02:33 UTC 2017


> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at lists.osuosl.org] On
> Behalf Of Jacob Keller
> Sent: Wednesday, May 3, 2017 10:29 AM
> To: Intel Wired LAN <intel-wired-lan at lists.osuosl.org>
> Cc: Richard Cochran <richardcochran at gmail.com>
> Subject: [Intel-wired-lan] [PATCH v4 15/15] ixgbe: check for Tx timestamp
> timeouts during watchdog
> 
> The ixgbe driver has logic to handle only one Tx timestamp at a time, using a
> state bit lock to avoid multiple requests at once.
> 
> It may be possible, if incredibly unlikely, that a Tx timestamp event is
> requested but never completes. Since we use an interrupt scheme to
> determine when the Tx timestamp occurred we would never clear the state
> bit in this case.
> 
> Add an ixgbe_ptp_tx_hang() function similar to the already existing
> ixgbe_ptp_rx_hang() function. This function runs in the watchdog routine
> and makes sure we eventually recover from this case instead of permanently
> disabling Tx timestamps.
> 
> Note: there is no currently known way to cause this without hacking the
> driver code to force it.
> 
> Signed-off-by: Jacob Keller <jacob.e.keller at intel.com>
> ---
>  drivers/net/ethernet/intel/ixgbe/ixgbe.h      |  1 +
>  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c |  1 +
> drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c  | 27
> +++++++++++++++++++++++++++
>  3 files changed, 29 insertions(+)

Tested-by: Andrew Bowers <andrewx.bowers at intel.com>




More information about the Intel-wired-lan mailing list