diff options
author | Kuniyuki Iwashima <kuniyu@amazon.com> | 2025-04-11 13:52:38 -0700 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2025-04-14 17:08:43 -0700 |
commit | b7924f50be1525543d261a209790c86240b0df97 (patch) | |
tree | cea28412b0d96d43286793b30641cacdb5fb1cb6 | |
parent | 9571ab5a98fefa2698f52adfb2823eaac5ca8ce2 (diff) |
bridge: Convert br_net_exit_batch_rtnl() to ->exit_rtnl().
br_net_exit_batch_rtnl() iterates the dying netns list and
performs the same operation for each.
Let's use ->exit_rtnl().
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Acked-by: Nikolay Aleksandrov <razor@blackwall.org>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Link: https://patch.msgid.link/20250411205258.63164-10-kuniyu@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r-- | net/bridge/br.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/net/bridge/br.c b/net/bridge/br.c index 25dda554ca5b..0adeafe11a36 100644 --- a/net/bridge/br.c +++ b/net/bridge/br.c @@ -368,21 +368,20 @@ void br_opt_toggle(struct net_bridge *br, enum net_bridge_opts opt, bool on) clear_bit(opt, &br->options); } -static void __net_exit br_net_exit_batch_rtnl(struct list_head *net_list, - struct list_head *dev_to_kill) +static void __net_exit br_net_exit_rtnl(struct net *net, + struct list_head *dev_to_kill) { struct net_device *dev; - struct net *net; - ASSERT_RTNL(); - list_for_each_entry(net, net_list, exit_list) - for_each_netdev(net, dev) - if (netif_is_bridge_master(dev)) - br_dev_delete(dev, dev_to_kill); + ASSERT_RTNL_NET(net); + + for_each_netdev(net, dev) + if (netif_is_bridge_master(dev)) + br_dev_delete(dev, dev_to_kill); } static struct pernet_operations br_net_ops = { - .exit_batch_rtnl = br_net_exit_batch_rtnl, + .exit_rtnl = br_net_exit_rtnl, }; static const struct stp_proto br_stp_proto = { |