• Al Viro's avatar
    New helper: deactivate_locked_super() · 74dbbdd7
    Al Viro authored
    Does equivalent of up_write(&s->s_umount); deactivate_super(s);
    However, it does not does not unlock it until it's all over.
    As the result, it's safe to use to dispose of new superblock on ->get_sb()
    failure exits - nobody will see the sucker until it's all over.
    Equivalent using up_write/deactivate_super is safe for that purpose
    if superblock is either	safe to use or has NULL ->s_root when we unlock.
    Normally filesystems take the required precautions, but
    	a) we do have bugs in that area in some of them.
    	b) up_write/deactivate_super sequence is extremely common,
    so the helper makes sense anyway.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    74dbbdd7
super.c 25.4 KB