linux/drivers/net/ethernet
David Woodhouse aaa0062ecf 8139cp: Do not re-enable RX interrupts in cp_tx_timeout()
If an RX interrupt was already received but NAPI has not yet run when
the RX timeout happens, we end up in cp_tx_timeout() with RX interrupts
already disabled. Blindly re-enabling them will cause an IRQ storm.

(This is made particularly horrid by the fact that cp_interrupt() always
returns that it's handled the interrupt, even when it hasn't actually
done anything. If it didn't do that, the core IRQ code would have
detected the storm and handled it, I'd have had a clear smoking gun
backtrace instead of just a spontaneously resetting router, and I'd have
at *least* two days of my life back. Changing the return value of
cp_interrupt() will be argued about under separate cover.)

Unconditionally leave RX interrupts disabled after the reset, and
schedule NAPI to check the receive ring and re-enable them.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-09-23 14:47:12 -07:00
..
3com 3c59x: Add BQL support for 3c59x ethernet driver. 2015-08-24 12:20:58 -07:00
8390
adaptec
adi
aeroflex
agere
allwinner net: sun4i-emac: Claim emac sram 2015-08-25 13:48:59 -07:00
alteon
altera net: eth: altera: Fix the initial device operstate 2015-09-09 12:10:15 -07:00
amd treewide: fix typos in comment blocks 2015-08-07 14:46:24 +02:00
apm Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-08-27 21:45:31 -07:00
apple
arc net: arc: Fix module autoload for OF platform driver 2015-09-21 16:08:20 -07:00
atheros net: atl1c: add BQL support 2015-08-12 16:27:40 -07:00
broadcom net: bcmgenet: Fix module autoload for OF platform driver 2015-09-21 16:08:21 -07:00
brocade bna: check for dma mapping errors 2015-09-20 21:36:57 -07:00
cadence Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-07-31 23:52:20 -07:00
calxeda
cavium net: cavium: liquidio: use kzalloc in setup_glist() 2015-09-09 17:06:00 -07:00
chelsio cxgb4: add device ID for few T5 adapters 2015-09-17 16:24:51 -07:00
cirrus
cisco flow_dissector: Add flags argument to skb_flow_dissector functions 2015-09-01 15:06:22 -07:00
davicom dm9000: fix a typo 2015-09-08 22:44:42 -07:00
dec
dlink
emulex be2net: allow offloading with the same port for IPv4 and IPv6 2015-09-17 22:32:16 -07:00
ezchip NET: nps_enet: minor namespace cleanup 2015-08-23 16:08:54 -07:00
faraday
freescale net: gianfar_ptp: Fix module autoload for OF platform driver 2015-09-21 16:08:21 -07:00
fujitsu
hisilicon
hp
i825xx
ibm
icplus
intel ixgbe: Resolve "initialized field overwritten" warnings 2015-09-01 17:20:02 -07:00
marvell net: mvneta: fix DMA buffer unmapping in mvneta_rx() 2015-09-15 14:54:50 -07:00
mellanox net/mlx4_en: really allow to change RSS key 2015-09-17 21:03:59 -07:00
micrel net: ks8851: Export OF module alias information 2015-09-17 21:24:02 -07:00
microchip
moxa net: moxa: Fix module autoload for OF platform driver 2015-09-21 16:09:02 -07:00
myricom
natsemi
neterion
nuvoton
nvidia
nxp
octeon
oki-semi
packetengines
pasemi
qlogic qlcnic: track vxlan port count 2015-09-17 22:32:16 -07:00
qualcomm
rdc
realtek 8139cp: Do not re-enable RX interrupts in cp_tx_timeout() 2015-09-23 14:47:12 -07:00
renesas Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-08-30 21:45:01 -07:00
rocker rocker: use change upper info 2015-08-27 16:28:35 -07:00
samsung
seeq
sfc sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
sgi
silan
sis
smsc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-08-30 21:45:01 -07:00
stmicro net: stmmac: Use msleep rather then udelay for reset delay 2015-09-15 15:05:29 -07:00
sun sunvnet: Invoke SET_NETDEV_DEV() to set up the vdev in vnet_new() 2015-09-21 16:28:36 -07:00
synopsys ethernet: synopsys: SYNOPSYS_DWC_ETH_QOS should depend on HAS_DMA 2015-09-06 19:48:53 -07:00
tehuti
ti net: netcp: fix deadlock reported by lockup detector 2015-09-23 14:37:37 -07:00
tile nohz: Prevent tilegx network driver interrupts 2015-07-29 15:44:59 +02:00
toshiba
tundra
via
wiznet
xilinx
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c net: ethoc: Remove unnecessary #ifdef CONFIG_OF 2015-09-09 14:16:05 -07:00
fealnx.c
jme.c net: jme: use kzalloc() instead of kmalloc+memset 2015-09-09 17:06:00 -07:00
jme.h
Kconfig dwc_eth_qos: Add the synopsys folder to the build system. 2015-07-28 23:55:00 -07:00
korina.c
lantiq_etop.c
Makefile Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-08-27 21:45:31 -07:00
netx-eth.c