linux/drivers/net/ethernet
Frank Li 54309fa60b net: fec: fix kernel oops when plug/unplug cable many times
reproduce steps
 1. flood ping from other machine
 	ping -f -s 41000 IP
 2. run below script
    while [ 1 ]; do ethtool -s eth0 autoneg off;
    sleep 3;ethtool -s eth0 autoneg on; sleep 4; done;

You can see oops in one hour.

The reason is fec_restart clear BD but NAPI may use it.
The solution is disable NAPI and stop xmit when reset BD.
disable NAPI may sleep, so fec_restart can't be call in
atomic context.

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Tested-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-05-08 13:13:30 -07:00
..
3com 3c59x: fix freeing nonexistent resource on driver unload 2013-05-06 12:22:11 -04:00
8390 Char / Misc driver update for 3.10-rc1 2013-04-29 11:18:34 -07:00
adaptec net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
adi bfin_mac: fix error return code in bfin_mac_probe() 2013-05-08 13:13:30 -07:00
aeroflex drivers:net: dma_alloc_coherent: use __GFP_ZERO instead of memset(, 0) 2013-03-17 12:50:24 -04:00
alteon net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
amd Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
apple drivers:net: Remove dma_alloc_coherent OOM messages 2013-03-15 08:56:58 -04:00
atheros Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
broadcom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
brocade net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
cadence net/macb: fix error return code in macb_probe() 2013-04-15 14:09:37 -04:00
calxeda net: calxedaxgmac: fix condition in xgmac_set_features() 2013-04-25 03:50:17 -04:00
chelsio cxgb4: fix error recovery when t4_fw_hello returns a positive value 2013-05-03 16:10:34 -04:00
cirrus cirrus: cs89x0: remove two obsolete Kconfig macros 2013-03-29 15:40:24 -04:00
cisco net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
davicom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-04-01 13:36:50 -04:00
dec Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-03-20 12:46:26 -04:00
dlink drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
emulex be2net: disable TX in be_close() 2013-05-08 11:59:48 -07:00
faraday net: ftgmac100: Use module_platform_driver() 2013-03-18 13:02:37 -04:00
freescale net: fec: fix kernel oops when plug/unplug cable many times 2013-05-08 13:13:30 -07:00
fujitsu Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
hp
i825xx drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
ibm net/eth/ibmveth: Fixup retrieval of MAC address 2013-05-05 16:58:02 -04:00
icplus
intel e1000e: fix scheduling while atomic bug 2013-05-07 07:51:37 -07:00
marvell sky2: Fix crash on receiving VLAN frames 2013-05-03 16:10:34 -04:00
mellanox mlx4_en: fix a build error on 32bit arches 2013-04-30 19:00:25 -04:00
micrel ks8851: Remove unneeded PM_OPS definitions 2013-04-16 16:30:51 -04:00
microchip net: ethernet: enc28j60: use spi_get_drvdata() and spi_set_drvdata() 2013-04-07 16:48:19 -04:00
myricom net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
natsemi net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
neterion net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
nuvoton drivers:net: Remove dma_alloc_coherent OOM messages 2013-03-15 08:56:58 -04:00
nvidia net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
nxp net/nxp/lpc_eth: Drop ifdef CONFIG_OF_NET 2013-04-02 16:43:56 -04:00
octeon
oki-semi pch_gbe: minor: report the actual error on MTU change 2013-04-16 16:43:35 -04:00
packetengines
pasemi drivers:net: dma_alloc_coherent: use __GFP_ZERO instead of memset(, 0) 2013-03-17 12:50:24 -04:00
qlogic qlcnic: Update version to 5.2.42 2013-04-24 19:34:06 -04:00
rdc drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
realtek Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-04-30 03:55:20 -04:00
renesas sh_eth: use random MAC address if no valid one supplied 2013-04-30 15:37:08 -04:00
seeq drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
sfc sfc: fix return value check in efx_ptp_probe_channel() 2013-05-08 13:13:30 -07:00
sgi drivers:net: dma_alloc_coherent: use __GFP_ZERO instead of memset(, 0) 2013-03-17 12:50:24 -04:00
silan
sis sis900: check for DMA map errors 2013-04-15 14:11:37 -04:00
smsc ARM: arm-soc non-critical fixes for 3.10 2013-05-02 08:56:55 -07:00
stmicro Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-04-22 20:32:51 -04:00
sun net: add ETH_P_802_3_MIN 2013-03-28 01:20:42 -04:00
tehuti net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
ti drivers: net: cpsw: irq not disabled in cpsw isr in particular sequence 2013-05-02 16:52:04 -04:00
tile
toshiba net/spider_net: fix error return code in spider_net_open() 2013-05-08 13:13:29 -07:00
tundra drivers:net: dma_alloc_coherent: use __GFP_ZERO instead of memset(, 0) 2013-03-17 12:50:24 -04:00
via net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
wiznet net: ethernet: wiznet: add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-26 12:47:17 -04:00
xilinx net: vlan: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* 2013-04-19 14:45:26 -04:00
xircom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
xscale
dnet.c
dnet.h
ethoc.c
fealnx.c
jme.c net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
jme.h
Kconfig
korina.c
lantiq_etop.c lantiq_etop: use free_netdev(netdev) instead of kfree() 2013-03-21 11:50:10 -04:00
Makefile
netx-eth.c drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
s6gmac.c s6gmac: fix error return code in s6gmac_probe() 2013-03-22 10:23:42 -04:00