diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2009-05-06 07:07:50 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-05-09 16:49:39 +0200 |
commit | 74dbbdd7fdc11763f4698d2f3e684cf4446951e6 (patch) | |
tree | f31d70174915b0d209fafeec35e996e8ed7e269d /fs/nfs/super.c | |
parent | reiserfs: remove privroot hiding in lookup (diff) | |
download | linux-74dbbdd7fdc11763f4698d2f3e684cf4446951e6.tar.xz linux-74dbbdd7fdc11763f4698d2f3e684cf4446951e6.zip |
New helper: deactivate_locked_super()
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: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/nfs/super.c')
0 files changed, 0 insertions, 0 deletions