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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
adaptec drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
adi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
aeroflex
agere drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
allwinner net: sun4i-emac: Claim emac sram 2015-08-25 13:48:59 -07:00
alteon drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
dlink drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
freescale net: gianfar_ptp: Fix module autoload for OF platform driver 2015-09-21 16:08:21 -07:00
fujitsu drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
hisilicon net: Drop owner assignment from platform_driver 2015-07-10 23:18:29 -07:00
hp drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
i825xx drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
ibm ibmveth: add support for TSO6 2015-07-15 21:34:56 -07:00
icplus net: icplus: fix typo in constant name 2015-06-29 15:57:50 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
moxa net: moxa: Fix module autoload for OF platform driver 2015-09-21 16:09:02 -07:00
myricom Minor merge needed, due to function move. 2015-07-01 10:49:25 -07:00
natsemi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
neterion neterion: s2io: Use module_pci_driver 2015-07-09 00:19:00 -07:00
nuvoton drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
nvidia drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
nxp
octeon
oki-semi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
packetengines drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
pasemi drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
qlogic qlcnic: track vxlan port count 2015-09-17 22:32:16 -07:00
qualcomm drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
rdc drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
silan drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
sis sis900: Trivial: Fix typos in enums 2015-06-29 12:52:06 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
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 drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
tundra drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
via net: via: VIA_RHINE and VIA_VELOCITY should depend on HAS_DMA 2015-06-28 20:20:55 -07:00
wiznet drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
xilinx net: axienet: Fix devm_ioremap_resource return value check 2015-07-09 21:43:16 -07:00
xircom drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
xscale drivers/net: remove all references to obsolete Ethernet-HOWTO 2015-06-23 06:50:35 -07:00
dnet.c
dnet.h
ec_bhf.c net: ec_bhf: Use module_pci_driver 2015-07-08 16:04:06 -07:00
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