1
0
Fork 0
alistair23-linux/drivers/net/ethernet
wenxiong@linux.vnet.ibm.com 9aaae044ab bnx2x: Fix kernel crash and data miscompare after EEH recovery
A rmb() is required to ensure that the CQE is not read before it
is written by the adapter DMA.  PCI ordering rules will make sure
the other fields are written before the marker at the end of struct
eth_fast_path_rx_cqe but without rmb() a weakly ordered processor can
process stale data.

Without the barrier we have observed various crashes including
bnx2x_tpa_start being called on queues not stopped (resulting in message
start of bin not in stop) and NULL pointer exceptions from bnx2x_rx_int.

Signed-off-by: Milton Miller <miltonm@us.ibm.com>
Signed-off-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-06-03 18:37:38 -07:00
..
3com Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
8390 net/apne: replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO 2014-04-12 01:59:38 -04:00
adaptec
adi bfin_mac: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
aeroflex net: greth: remove empty MDIO bus reset function 2014-03-28 01:38:01 -04:00
allwinner net: sun4i-emac: add promiscuous support 2014-04-12 01:59:38 -04:00
alteon
altera Altera TSE: Disable Multicast filtering to workaround problem 2014-05-15 16:46:46 -04:00
amd pcnet32: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:53 -07:00
apple
arc arc_emac: add clock handling 2014-04-27 19:46:17 -04:00
atheros atl1e: remove open-coded skb_cow_head. 2014-03-29 17:49:47 -04:00
broadcom bnx2x: Fix kernel crash and data miscompare after EEH recovery 2014-06-03 18:37:38 -07:00
brocade bna: remove open-coded skb_cow_head. 2014-03-29 17:49:47 -04:00
cadence net: macb: Fix race between HW and driver 2014-05-05 17:11:18 -04:00
calxeda xgmac: Call dev_kfree/consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:56 -07:00
chelsio cxgb4: Decode PCIe Gen3 link speed 2014-04-30 16:12:21 -04:00
cirrus cs89x0: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:58 -07:00
cisco net: enic: include irq.h for irqreturn_t definitions 2014-04-03 14:04:34 -04:00
davicom dm9000: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:18:59 -07:00
dec uli526x: Call dev_kfree/consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:00 -07:00
dlink sundance: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:01 -07:00
emulex be2net: enable interrupts in EEH resume 2014-05-14 15:36:39 -04:00
faraday net: ftgmac100: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
freescale gianfar: Avoid unnecessary reg accesses in adjust_link() 2014-04-30 16:12:23 -04:00
fujitsu
hp
i825xx i825xx: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:02 -07:00
ibm emac: aggregation of v1-2 PLB errors for IER register 2014-05-30 16:29:57 -07:00
icplus
intel e1000e: Restrict MDIO Slow Mode workaround to relevant parts 2014-05-05 13:03:27 -07:00
marvell net: mvmdio: Check for a valid interrupt instead of an error 2014-05-02 16:18:54 -04:00
mellanox net/mlx4_core: Reset RoCE VF gids when guest driver goes down 2014-05-30 16:57:52 -07:00
micrel Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-25 20:29:20 -04:00
microchip
moxa
myricom myri10ge: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-02-18 15:33:32 -05:00
natsemi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-01-25 11:17:34 -08:00
neterion vxge: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:07 -07:00
nuvoton
nvidia forcedeth: Call dev_kfree_skb_any instead of kfree_skb. 2014-03-24 21:19:08 -07:00
nxp
octeon
oki-semi net: ptp: do not reimplement PTP/BPF classifier 2014-03-31 00:45:09 -04:00
packetengines
pasemi
qlogic qlcnic: info leak in qlcnic_dcb_peer_app_info() 2014-05-24 14:01:17 -04:00
rdc r6040: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
realtek net: Replace u64_stats_fetch_begin_bh to u64_stats_fetch_begin_irq 2014-03-14 22:41:36 -04:00
renesas sh_eth: ensure pm_runtime cannot suspend the device during init 2014-03-28 15:59:44 -04:00
samsung net: sxgbe: Added set function for interrupt on complete 2014-04-30 16:12:22 -04:00
seeq
sfc sfc: fix calling of free_irq with already free vector 2014-05-12 14:56:45 -04:00
sgi
silan sc92031: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:08 -07:00
sis sis900: Call dev_kfree_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:09 -07:00
smsc net: driver: smsc: set NOCARRIER flag in dev at driver initialization 2014-06-03 18:20:38 -07:00
stmicro stmmac: Remove unbalanced clk_disable call 2014-05-22 15:16:23 -04:00
sun net: cassini: use nested lock annotation 2014-05-09 16:34:10 -04:00
tehuti
ti net: davinci_emac: Remove unwanted debug/error message 2014-06-02 23:13:38 -07:00
tile tilepro: Call dev_consume_skb_any instead of kfree_skb. 2014-03-24 21:19:12 -07:00
toshiba spider_net: Call dev_consume_skb_any instead of dev_kfree_skb. 2014-03-24 21:19:13 -07:00
tundra
via Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-03-25 20:29:20 -04:00
wiznet net: w5100: Use devm_ioremap_resource() 2014-02-28 16:57:24 -05:00
xilinx net: emaclite: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
xircom
xscale net: ptp: move PTP classifier in its own file 2014-04-01 16:43:18 -04:00
Kconfig net: ec_bhf: Add runtime dependencies 2014-06-02 17:02:28 -07:00
Makefile Driver for Beckhoff CX5020 EtherCAT master module. 2014-05-08 22:59:25 -04:00
dnet.c dnet: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
dnet.h
ec_bhf.c Driver for Beckhoff CX5020 EtherCAT master module. 2014-05-08 22:59:25 -04:00
ethoc.c net: ethoc: remove empty MDIO bus function 2014-03-28 01:38:02 -04:00
fealnx.c
jme.c jme: Fix unmap loop counting error: 2014-05-14 15:11:22 -04:00
jme.h
korina.c
lantiq_etop.c netdevice: add queue selection fallback handler for ndo_select_queue 2014-02-17 00:36:34 -05:00
netx-eth.c
s6gmac.c