linux/drivers/net
Jacob Keller e5f36ad14c igb: check for Tx timestamp timeouts during watchdog
The igb 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 igb_ptp_tx_hang() function similar to the already existing
igb_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@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2017-06-06 01:03:17 -07:00
..
appletalk
arcnet
bonding bonding: Prevent duplicate userspace notification 2017-05-27 18:51:41 -04:00
caif
can can: m_can: add deep Suspend/Resume support 2017-05-18 10:32:48 +02:00
cris net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
dsa net: dsa: mv88e6xxx: mv88e6161 uses mv88e6320 stats snapshot 2017-06-04 21:34:17 -04:00
ethernet igb: check for Tx timestamp timeouts during watchdog 2017-06-06 01:03:17 -07:00
fddi
fjes
hamradio Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
hippi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-05-09 15:42:31 -07:00
hyperv netvsc: Add #include's for csum_* function declarations 2017-05-31 13:59:03 -04:00
ieee802154 net: ieee802154: fix potential null pointer dereference 2017-05-23 20:12:53 +02:00
ipvlan
irda Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-05-15 15:50:49 -07:00
phy mdio: mux: fix an incorrect less than zero error check using a u32 2017-06-05 17:45:51 -04:00
plip
ppp ppp: remove unnecessary bh disable in xmit path 2017-06-01 11:57:36 -04:00
slip
team team: add macro MODULE_ALIAS_TEAM_MODE for team mode alias 2017-06-02 10:20:49 -04:00
usb net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
vmxnet3 vmxnet3: ensure that adapter is in proper state during force_close 2017-05-12 12:23:52 -04:00
wan net/wan/fsl_ucc_hdlc: fix muram allocation error 2017-05-22 12:28:45 -04:00
wimax
wireless Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
xen-netback
dummy.c
eql.c
geneve.c geneve: fix fill_info when using collect_metadata 2017-05-25 12:51:16 -04:00
gtp.c net: fix potential null pointer dereference 2017-05-25 12:54:02 -04:00
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c macsec: check return value of skb_to_sgvec always 2017-06-04 23:01:47 -04:00
macvlan.c macvlan: Fix performance issues with vlan tagged packets 2017-05-15 14:18:11 -04:00
macvtap.c
Makefile
mdio.c
mii.c net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c tap: support receiving skb from msg_control 2017-05-18 10:07:41 -04:00
tun.c tun: support receiving skb through msg_control 2017-05-18 10:07:41 -04:00
veth.c
virtio_net.c virtio_net: check return value of skb_to_sgvec always 2017-06-04 23:01:48 -04:00
vrf.c driver: vrf: Fix one possible use-after-free issue 2017-05-11 12:13:11 -04:00
vsockmon.c
vxlan.c
xen-netfront.c xen-netfront: avoid crashing on resume after a failure in talk_to_netback() 2017-05-11 21:38:50 -04:00