提交 1edb5cbf 编写于 作者: P Petr Machata 提交者: David S. Miller

Revert "net-loopback: set lo dev initial state to UP"

In commit c9dca822 ("net-loopback: set lo dev initial state to UP"),
linux started automatically bringing up the loopback device of a newly
created namespace. However, an existing user script might reasonably have
the following stanza when creating a new namespace -- and in fact at least
tools/testing/selftests/net/fib_nexthops.sh in Linux's very own testsuite
does:

 # set -e
 # ip netns add foo
 # ip -netns foo addr add 127.0.0.1/8 dev lo
 # ip -netns foo link set lo up
 # set +e

This will now fail, because the kernel reasonably rejects "ip addr add" of
a duplicate address. The described change of behavior therefore constitutes
a breakage. Revert it.

Fixes: c9dca822 ("net-loopback: set lo dev initial state to UP")
Signed-off-by: NPetr Machata <petrm@nvidia.com>
Reviewed-by: NJakub Kicinski <kuba@kernel.org>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 4217a64e
...@@ -219,12 +219,6 @@ static __net_init int loopback_net_init(struct net *net) ...@@ -219,12 +219,6 @@ static __net_init int loopback_net_init(struct net *net)
BUG_ON(dev->ifindex != LOOPBACK_IFINDEX); BUG_ON(dev->ifindex != LOOPBACK_IFINDEX);
net->loopback_dev = dev; net->loopback_dev = dev;
/* bring loopback device UP */
rtnl_lock();
dev_open(dev, NULL);
rtnl_unlock();
return 0; return 0;
out_free_netdev: out_free_netdev:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册