linux/drivers/net/bonding
Johannes Berg 3756c25751 net: bonding: correctly annotate RCU in bond_should_notify_peers()
[ Upstream commit 3ba359c0cd ]

RCU use in bond_should_notify_peers() looks wrong, since it does
rcu_dereference(), leaves the critical section, and uses the
pointer after that.

Luckily, it's called either inside a nested RCU critical section
or with the RTNL held.

Annotate it with rcu_dereference_rtnl() instead, and remove the
inner RCU critical section.

Fixes: 4cb4f97b7e ("bonding: rebuild the lock use for bond_mii_monitor()")
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-by: Jay Vosburgh <jv@jvosburgh.net>
Link: https://patch.msgid.link/20240719094119.35c62455087d.I68eb9c0f02545b364b79a59f2110f2cf5682a8e2@changeid
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-08-19 05:45:24 +02:00
..
bond_3ad.c drivers/net/bonding/bond_3ad: return when there's no aggregator 2023-01-12 11:59:15 +01:00
bond_alb.c bonding: return -ENOMEM instead of BUG in alb_upper_dev_walk 2024-02-23 08:54:41 +01:00
bond_debugfs.c bonding: fix error checking in bond_debug_reregister() 2023-02-14 19:17:58 +01:00
bond_main.c net: bonding: correctly annotate RCU in bond_should_notify_peers() 2024-08-19 05:45:24 +02:00
bond_netlink.c bonding: fix send_peer_notif overflow 2023-06-05 09:21:19 +02:00
bond_options.c bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set() 2024-07-18 13:07:31 +02:00
bond_procfs.c Bonding: add arp_missed_max option 2023-06-05 09:21:19 +02:00
bond_sysfs.c Bonding: add arp_missed_max option 2023-06-05 09:21:19 +02:00
bond_sysfs_slave.c bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed 2021-11-18 19:17:08 +01:00
bonding_priv.h drivers: Remove inclusion of vermagic header 2020-04-21 13:27:37 -07:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00