ixgbe: Add ptp work item to poll for the Tx timestamp
authorJacob Keller <jacob.e.keller@intel.com>
Wed, 5 Dec 2012 07:24:46 +0000 (07:24 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 23 Jan 2013 22:33:28 +0000 (14:33 -0800)
commit891dc0821d2089afcb04d3cace0a3522093680e7
tree3300dfc075d53037268f162d540b1b3b4cd18a5d
parent6cb562d6681155190c52ef7603c559c284eef159
ixgbe: Add ptp work item to poll for the Tx timestamp

This patch copies the igb implementation of Tx timestamps, which uses a work
item to poll for the Tx timestamp. In addition it adds a timeout value of 15
seconds, after which it will stop polling.

This is necessary due to an issue with the descriptor being marked done before
the Tx timestamp event has occurred. These two events don't correlate, so using
the done bit on the descriptor as indication that the timestamp must already
have been taken leads to potentially dropped Tx timestamps (especially under
heavy packet load)

Reported-by: Matthew Vick <matthew.vick@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe.h
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c