linux/drivers/net/ethernet/intel/igc
Sasha Neftin 9b27517627 igc: Add ndo_tx_timeout support
On some platforms, 100/1000/2500 speeds seem to have sometimes problems
reporting false positive tx unit hang during stressful UDP traffic. Likely
other Intel drivers introduce responses to a tx hang. Update the 'tx hang'
comparator with the comparison of the head and tail of ring pointers and
restore the tx_timeout_factor to the previous value (one).

This can be test by using netperf or iperf3 applications.
Example:
iperf3 -s -p 5001
iperf3 -c 192.168.0.2 --udp -p 5001 --time 600 -b 0

netserver -p 16604
netperf -H 192.168.0.2 -l 600 -p 16604 -t UDP_STREAM -- -m 64000

Fixes: b27b8dc77b ("igc: Increase timeout value for Speed 100/1000/2500")
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Tested-by: Naama Meir <naamax.meir@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Link: https://lore.kernel.org/r/20230206235818.662384-1-anthony.l.nguyen@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-02-07 21:57:26 -08:00
..
igc.h igc: allow BaseTime 0 enrollment for Qbv 2022-12-15 13:19:49 -08:00
igc_base.c igc: Remove unused phy_type enum 2022-05-10 14:02:40 -07:00
igc_base.h
igc_defines.h igc: Fix PPS delta between two synchronized end-points 2023-01-10 11:43:36 -08:00
igc_diag.c
igc_diag.h
igc_dump.c
igc_ethtool.c net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). 2022-10-28 20:13:54 -07:00
igc_hw.h igc: Remove forced_speed_duplex value 2022-07-18 09:34:38 -07:00
igc_i225.c
igc_i225.h
igc_mac.c intel/igc:fix repeated words in comments 2022-06-30 11:06:23 -07:00
igc_mac.h
igc_main.c igc: Add ndo_tx_timeout support 2023-02-07 21:57:26 -08:00
igc_nvm.c
igc_nvm.h
igc_phy.c igc: Change type of the 'igc_check_downshift' method 2022-05-10 14:02:53 -07:00
igc_phy.h igc: Change type of the 'igc_check_downshift' method 2022-05-10 14:02:53 -07:00
igc_ptp.c igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp() 2023-02-01 21:19:57 -08:00
igc_regs.h igc: Correct the launchtime offset 2022-11-02 11:38:22 -07:00
igc_tsn.c igc: allow BaseTime 0 enrollment for Qbv 2022-12-15 13:19:49 -08:00
igc_tsn.h igc: Correct the launchtime offset 2022-11-02 11:38:22 -07:00
igc_xdp.c
igc_xdp.h
Makefile