• Al Viro's avatar
    No need to do lock_super() for exclusion in generic_shutdown_super() · a9e220f8
    Al Viro authored
    We can't run into contention on it.  All other callers of lock_super()
    either hold s_umount (and we have it exclusive) or hold an active
    reference to superblock in question, which prevents the call of
    generic_shutdown_super() while the reference is held.  So we can
    replace lock_super(s) with get_fs_excl() in generic_shutdown_super()
    (and corresponding change for unlock_super(), of course).
    
    Since ext4 expects s_lock held for its put_super, take lock_super()
    into it.  The rest of filesystems do not care at all.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    a9e220f8
super.c 112 KB