Commit 2248c053 authored by Kuniyuki Iwashima's avatar Kuniyuki Iwashima Committed by Jakub Kicinski
Browse files

net: loopback: Hold rtnl_net_lock() in blackhole_netdev_init().



blackhole_netdev is the global device in init_net.

Let's hold rtnl_net_lock(&init_net) in blackhole_netdev_init().

While at it, the unnecessary dev_net_set() call is removed, which
is done in alloc_netdev_mqs().

Signed-off-by: default avatarKuniyuki Iwashima <kuniyu@amazon.com>
Link: https://patch.msgid.link/20250114081352.47404-1-kuniyu@amazon.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 7a649f39
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -264,13 +264,12 @@ static int __init blackhole_netdev_init(void)
	if (!blackhole_netdev)
		return -ENOMEM;

	rtnl_lock();
	rtnl_net_lock(&init_net);
	dev_init_scheduler(blackhole_netdev);
	dev_activate(blackhole_netdev);
	rtnl_unlock();
	rtnl_net_unlock(&init_net);

	blackhole_netdev->flags |= IFF_UP | IFF_RUNNING;
	dev_net_set(blackhole_netdev, &init_net);

	return 0;
}