]> git.baikalelectronics.ru Git - kernel.git/commit
net: allow out-of-order netdev unregistration
authorJakub Kicinski <kuba@kernel.org>
Tue, 15 Feb 2022 22:53:10 +0000 (14:53 -0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 17 Feb 2022 16:22:21 +0000 (08:22 -0800)
commitae8ce4d9ef4b29a16ff038e724c81a691f2438e5
tree181a9c75669af333b939a5207274392ad6401f36
parent4728211463cd8e33a14f5b1a8d1a760e39cc07df
net: allow out-of-order netdev unregistration

Sprinkle for each loops to allow netdevices to be unregistered
out of order, as their refs are released.

This prevents problems caused by dependencies between netdevs
which want to release references in their ->priv_destructor.
See commit aaa1b061b68a ("vlan: move dev_put into vlan_dev_uninit")
for example.

Eric has removed the only known ordering requirement in
commit 324530c30778 ("Merge branch 'ipv6-loopback'")
so let's try this and see if anything explodes...

Reviewed-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Xin Long <lucien.xin@gmail.com>
Link: https://lore.kernel.org/r/20220215225310.3679266-2-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/dev.c