Eric W. Biederman 8eb7986396 netns: foreach_netdev_safe is insufficient in default_device_exit
During network namespace teardown we either move or delete
all of the network devices associated with a network namespace.
In the case of veth devices deleting one will also delete it's
pair device.  If both devices are in the same network namespace
then for_each_netdev_safe is insufficient as next may point
to the second veth device we have deleted.

To avoid problems I do what we do in __rtnl_kill_links and
restart the scan of the device list, after we have deleted
a device.

Currently dev_change_netnamespace does not appear to suffer from
this problem, but wireless devices are also paired and likely
should be moved between network namespaces together.  So I have
errored on the side of caution and restart the scan of the network
devices in that case as well.

Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-29 18:21:48 -08:00
..
2008-12-08 01:14:16 -08:00
2008-12-14 23:16:58 -08:00
2008-12-10 15:18:31 -08:00
2008-12-10 15:18:31 -08:00
2008-11-03 18:21:05 -08:00
2008-12-14 23:18:30 -08:00
2008-11-25 17:59:00 -08:00
2008-11-03 18:21:05 -08:00
2008-11-19 18:49:57 -08:00
2008-11-25 01:02:08 -08:00