• Daniel Lezcano's avatar
    netns: fix addrconf_ifdown kernel panic · 176c39af
    Daniel Lezcano authored
    When a network namespace is destroyed the network interfaces are
    all unregistered, making addrconf_ifdown called by the netdevice
    notifier. 
    In the other hand, the addrconf exit method does a loop on the network
    devices and does addrconf_ifdown on each of them. But the ordering of 
    the netns subsystem is not right because it uses the register_pernet_device
    instead of register_pernet_subsys. If we handle the loopback as
    any network device, we can safely use register_pernet_subsys.
    
    But if we use register_pernet_subsys, the addrconf exit method will do
    exactly what was already done with the unregistering of the network
    devices. So in definitive, this code is pointless.
    
    I removed the netns addrconf exit method and moved the code to the
    addrconf cleanup function.
    Signed-off-by: default avatarDaniel Lezcano <dlezcano@fr.ibm.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    176c39af
addrconf.c 109 KB