OSDN Git Service

igc: Add ndo_tx_timeout support
authorSasha Neftin <sasha.neftin@intel.com>
Mon, 6 Feb 2023 23:58:18 +0000 (15:58 -0800)
committerJakub Kicinski <kuba@kernel.org>
Wed, 8 Feb 2023 05:57:26 +0000 (21:57 -0800)
commit9b275176270efd18f2f4e328b32be1bad34c4c0d
tree17d648a78e6bb5c6a7675f142a6ce588538afd72
parent18a048370b06a3a521219e9e5b10bdc2178ef19c
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: b27b8dc77b5e ("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>
drivers/net/ethernet/intel/igc/igc_main.c