Skip to content

Commit 1c04b46

Browse files
edumazetkuba-moo
authored andcommitted
neighbour: fix neigh_master_filtered()
If we no longer hold RTNL, we must use netdev_master_upper_dev_get_rcu() instead of netdev_master_upper_dev_get(). Fixes: ba0f780 ("neighbour: no longer hold RTNL in neigh_dump_info()") Signed-off-by: Eric Dumazet <edumazet@google.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Link: https://lore.kernel.org/r/20240421185753.1808077-1-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 8d03c15 commit 1c04b46

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

net/core/neighbour.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2682,7 +2682,7 @@ static bool neigh_master_filtered(struct net_device *dev, int master_idx)
26822682
if (!master_idx)
26832683
return false;
26842684

2685-
master = dev ? netdev_master_upper_dev_get(dev) : NULL;
2685+
master = dev ? netdev_master_upper_dev_get_rcu(dev) : NULL;
26862686

26872687
/* 0 is already used to denote NDA_MASTER wasn't passed, therefore need another
26882688
* invalid value for ifindex to denote "no master".

0 commit comments

Comments
 (0)