]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ipv6: Hold rtnl_net_lock() in addrconf_verify_work().
authorKuniyuki Iwashima <kuniyu@amazon.com>
Wed, 15 Jan 2025 08:06:00 +0000 (17:06 +0900)
committerJakub Kicinski <kuba@kernel.org>
Mon, 20 Jan 2025 20:16:05 +0000 (12:16 -0800)
addrconf_verify_work() is per-netns work to call addrconf_verify_rtnl()
under RTNL.

Let's use rtnl_net_lock().

Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Link: https://patch.msgid.link/20250115080608.28127-4-kuniyu@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv6/addrconf.c

index fb0ef98c79b015c30b5787c4302c25a3735af4bd..fe85cb2d49c843489ba8f5976c0ea1217f048e9f 100644 (file)
@@ -4751,9 +4751,9 @@ static void addrconf_verify_work(struct work_struct *w)
        struct net *net = container_of(to_delayed_work(w), struct net,
                                       ipv6.addr_chk_work);
 
-       rtnl_lock();
+       rtnl_net_lock(net);
        addrconf_verify_rtnl(net);
-       rtnl_unlock();
+       rtnl_net_unlock(net);
 }
 
 static void addrconf_verify(struct net *net)