linux_dsm_epyc7002/drivers/net
Veaceslav Falico 010d3c3989 bonding: fix bond_arp_rcv() race of curr_active_slave
bond->curr_active_slave can be changed between its deferences, even to
NULL, and thus we might panic.

We're always holding the rcu (rx_handler->bond_handle_frame()->bond_arp_rcv())
so fix this by rcu_dereferencing() it and using the saved.

Reported-by: Ding Tianhong <dingtianhong@huawei.com>
Fixes: aeea64a ("bonding: don't trust arp requests unless active slave really works")
CC: Jay Vosburgh <fubar@us.ibm.com>
CC: Andy Gospodarek <andy@greyhouse.net>
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
Acked-by: Ding Tianhong <dingtianhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-02-20 13:20:55 -05:00
..
appletalk
arcnet drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
bonding bonding: fix bond_arp_rcv() race of curr_active_slave 2014-02-20 13:20:55 -05:00
caif caif: delete unnecessary field initialization 2014-02-17 00:29:23 -05:00
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
cris
dsa
ethernet pcnet32: add missing check for pci_dma_mapping_error 2014-02-19 14:58:27 -05:00
fddi drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
hamradio Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-01-06 17:37:45 -05:00
hippi drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
hyperv hyperv: Add latest NetVSP versions to auto negotiation 2014-02-19 19:52:45 -05:00
ieee802154 ieee802154: enable smart transmitter features of RF212 2014-02-17 16:42:39 -05:00
irda irtty-sir.c: Do not set_termios() on irtty_close() 2014-02-17 16:27:51 -05:00
phy Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
plip
ppp
slip
team Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
vmxnet3 vmxnet3: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-02-18 15:33:34 -05:00
wan wan: dlci: Remove unused netdev_priv pointer 2014-02-09 18:40:56 -08:00
wimax
wireless Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
xen-netback xen-netback: Fix Rx stall due to race condition 2014-02-05 16:24:08 -08:00
dummy.c net: introduce netdev_alloc_pcpu_stats() for drivers 2014-02-14 15:49:55 -05:00
eql.c eql: use __dev_get_by_name instead of dev_get_by_name to find interface 2014-01-14 18:50:46 -08:00
ifb.c
Kconfig net: fix macvtap type name in Kconfig 2014-02-13 15:48:31 -05:00
LICENSE.SRC
loopback.c net: introduce netdev_alloc_pcpu_stats() for drivers 2014-02-14 15:49:55 -05:00
macvlan.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
macvtap.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c net: introduce netdev_alloc_pcpu_stats() for drivers 2014-02-14 15:49:55 -05:00
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c netdevice: add queue selection fallback handler for ndo_select_queue 2014-02-17 00:36:34 -05:00
veth.c rtnl: make ifla_policy static 2014-02-18 18:15:42 -05:00
virtio_net.c virtio-net: initial rx sysfs support, export mergeable rx buffer size 2014-01-16 23:46:07 -08:00
vxlan.c net: introduce netdev_alloc_pcpu_stats() for drivers 2014-02-14 15:49:55 -05:00
xen-netfront.c net: introduce netdev_alloc_pcpu_stats() for drivers 2014-02-14 15:49:55 -05:00