• Ying Xue's avatar
    tipc: fix a slab object leak · 7e436905
    Ying Xue authored
    When remove TIPC module, there is a warning to remind us that a slab
    object is leaked like:
    
    root@localhost:~# rmmod tipc
    [   19.056226] =============================================================================
    [   19.057549] BUG TIPC (Not tainted): Objects remaining in TIPC on kmem_cache_close()
    [   19.058736] -----------------------------------------------------------------------------
    [   19.058736]
    [   19.060287] INFO: Slab 0xffffea0000519a00 objects=23 used=1 fp=0xffff880014668b00 flags=0x100000000004080
    [   19.061915] INFO: Object 0xffff880014668000 @offset=0
    [   19.062717] kmem_cache_destroy TIPC: Slab cache still has objects
    
    This is because the listening socket of TIPC topology server is not
    closed before TIPC proto handler is unregistered with proto_unregister().
    However, as the socket is closed in tipc_exit_net() which is called by
    unregister_pernet_subsys() during unregistering TIPC namespace operation,
    the warning can be eliminated if calling unregister_pernet_subsys() is
    moved before calling proto_unregister().
    
    Fixes: e05b31f4 ("tipc: make tipc socket support net namespace")
    Reviewed-by: default avatarErik Hugne <erik.hugne@ericsson.com>
    Signed-off-by: default avatarYing Xue <ying.xue@windriver.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7e436905
core.c 4.43 KB