linux/drivers/net/ethernet/intel/igb
Vladimir Oltean 847cbfc014 net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME
As explained in commit 29d98f54a4 ("net: enetc: allow hardware
timestamping on TX queues with tc-etf enabled"), hardware TX
timestamping requires an skb with skb->tstamp = 0. When a packet is sent
with SO_TXTIME, the skb->skb_mstamp_ns corrupts the value of skb->tstamp,
so the drivers need to explicitly reset skb->tstamp to zero after
consuming the TX time.

Create a helper named skb_txtime_consumed() which does just that. All
drivers which offload TC_SETUP_QDISC_ETF should implement it, and it
would make it easier to assess during review whether they do the right
thing in order to be compatible with hardware timestamping or not.

Suggested-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-03-10 12:45:16 -08:00
..
e1000_82575.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
e1000_82575.h igb: Add UDP segmentation offload support 2019-10-29 21:05:33 -07:00
e1000_defines.h igb: Fix WARN_ONCE on runtime suspend 2019-03-26 16:12:34 -07:00
e1000_hw.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_i210.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
e1000_i210.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_mac.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
e1000_mac.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_mbx.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
e1000_mbx.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_nvm.c ethernet/intel: Convert fallthrough code comments 2020-07-01 13:47:43 -07:00
e1000_nvm.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_phy.c ethernet/intel: Convert fallthrough code comments 2020-07-01 13:47:43 -07:00
e1000_phy.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000_regs.h igb: add RR2DCDELAY to ethtool registers dump 2019-06-28 16:00:06 -07:00
igb_ethtool.c igb: add XDP support 2020-09-28 14:42:45 -07:00
igb_hwmon.c igb: convert to use i2c_new_client_device() 2020-03-26 19:31:21 -07:00
igb_main.c net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME 2021-03-10 12:45:16 -08:00
igb_ptp.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
igb.h igb: take VLAN double header into account 2020-12-09 15:26:58 -08:00
Makefile net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00