summaryrefslogtreecommitdiffstats
path: root/fs/9p/vfs_super.c
diff options
context:
space:
mode:
authorTrond Myklebust2006-06-09 15:34:18 +0200
committerTrond Myklebust2006-06-09 15:34:18 +0200
commit8b512d9a88875affe584bb3d2a7a235f84343b9e (patch)
tree80c46a675aeffaedd8d18e2bb6361768f4f4845a /fs/9p/vfs_super.c
parentVFS: Add shrink_submounts() (diff)
downloadkernel-qcow2-linux-8b512d9a88875affe584bb3d2a7a235f84343b9e.tar.gz
kernel-qcow2-linux-8b512d9a88875affe584bb3d2a7a235f84343b9e.tar.xz
kernel-qcow2-linux-8b512d9a88875affe584bb3d2a7a235f84343b9e.zip
VFS: Remove dependency of ->umount_begin() call on MNT_FORCE
Allow filesystems to decide to perform pre-umount processing whether or not MNT_FORCE is set. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/9p/vfs_super.c')
-rw-r--r--fs/9p/vfs_super.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index 61c599b4a1e3..00c1f6baf870 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -253,11 +253,12 @@ static int v9fs_show_options(struct seq_file *m, struct vfsmount *mnt)
}
static void
-v9fs_umount_begin(struct super_block *sb)
+v9fs_umount_begin(struct vfsmount *vfsmnt, int flags)
{
- struct v9fs_session_info *v9ses = sb->s_fs_info;
+ struct v9fs_session_info *v9ses = vfsmnt->mnt_sb->s_fs_info;
- v9fs_session_cancel(v9ses);
+ if (flags & MNT_FORCE)
+ v9fs_session_cancel(v9ses);
}
static struct super_operations v9fs_super_ops = {