• Eric W. Biederman's avatar
    net ax25: Reorder ax25_exit to remove races. · 3adadc08
    Eric W. Biederman authored
    While reviewing the sysctl code in ax25 I spotted races in ax25_exit
    where it is possible to receive notifications and packets after already
    freeing up some of the data structures needed to process those
    notifications and updates.
    
    Call unregister_netdevice_notifier early so that the rest of the cleanup
    code does not need to deal with network devices.  This takes advantage
    of my recent enhancement to unregister_netdevice_notifier to send
    unregister notifications of all network devices that are current
    registered.
    
    Move the unregistration for packet types, socket types and protocol
    types before we cleanup any of the ax25 data structures to remove the
    possibilities of other races.
    Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3adadc08
af_ax25.c 44 KB