linux_dsm_epyc7002/drivers/net/bonding
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
..
bond_3ad.c bonding: Invert test 2014-02-19 15:37:51 -05:00
bond_3ad.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
bond_alb.c bonding: Remove unnecessary else 2014-02-19 15:37:51 -05:00
bond_alb.h drivers/net/*: Fix FSF address in file headers 2013-12-06 12:37:55 -05:00
bond_debugfs.c bonding: Convert pr_warning to pr_warn, neatening 2014-02-17 00:29:23 -05:00
bond_main.c bonding: fix bond_arp_rcv() race of curr_active_slave 2014-02-20 13:20:55 -05:00
bond_netlink.c bonding: Neaten pr_<level> 2014-02-17 00:29:23 -05:00
bond_options.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-02-19 01:24:22 -05:00
bond_options.h bonding: convert slaves to use the new option API 2014-01-22 15:38:44 -08:00
bond_procfs.c bonding: Neaten pr_<level> 2014-02-17 00:29:23 -05:00
bond_sysfs_slave.c bonding: change name of sysfs dir for bonding slaves 2014-01-22 21:57:05 -08:00
bond_sysfs.c bonding: Neaten pr_<level> 2014-02-17 00:29:23 -05:00
bonding.h bonding: rename last_arp_rx to last_rx 2014-02-18 16:47:16 -05:00
Makefile bonding: add sysfs /slave dir for bond slave devices. 2014-01-17 18:51:58 -08:00