Name

deactivate_locked_super — drop an active reference to superblock

Synopsis

void deactivate_locked_super (struct super_block * s);
 

Arguments

s

superblock to deactivate

Description

Equivalent of up_write(s->s_umount); deactivate_super(s);, except that it 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 only if superblock is either safe to use or has NULL ->s_root when we unlock.