diff options
author | Alessio Igor Bogani <abogani@texware.it> | 2009-04-24 03:06:53 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-05-09 10:49:38 -0400 |
commit | 67e55205ec55cc7899f1d783f217961596798419 (patch) | |
tree | 45dd7351f9721a46ecb448f0571fb10db3259147 /fs/9p/vfs_super.c | |
parent | 091bf7624d1c90cec9e578a18529f615213ff847 (diff) |
vfs: umount_begin BKL pushdown
Push BKL down into ->umount_begin()
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/9p/vfs_super.c')
-rw-r--r-- | fs/9p/vfs_super.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c index 5f8ab8adb5f5..7d23214e5599 100644 --- a/fs/9p/vfs_super.c +++ b/fs/9p/vfs_super.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/mount.h> | 37 | #include <linux/mount.h> |
38 | #include <linux/idr.h> | 38 | #include <linux/idr.h> |
39 | #include <linux/sched.h> | 39 | #include <linux/sched.h> |
40 | #include <linux/smp_lock.h> | ||
40 | #include <net/9p/9p.h> | 41 | #include <net/9p/9p.h> |
41 | #include <net/9p/client.h> | 42 | #include <net/9p/client.h> |
42 | 43 | ||
@@ -230,9 +231,12 @@ static int v9fs_show_options(struct seq_file *m, struct vfsmount *mnt) | |||
230 | static void | 231 | static void |
231 | v9fs_umount_begin(struct super_block *sb) | 232 | v9fs_umount_begin(struct super_block *sb) |
232 | { | 233 | { |
233 | struct v9fs_session_info *v9ses = sb->s_fs_info; | 234 | struct v9fs_session_info *v9ses; |
234 | 235 | ||
236 | lock_kernel(); | ||
237 | v9ses = sb->s_fs_info; | ||
235 | v9fs_session_cancel(v9ses); | 238 | v9fs_session_cancel(v9ses); |
239 | unlock_kernel(); | ||
236 | } | 240 | } |
237 | 241 | ||
238 | static const struct super_operations v9fs_super_ops = { | 242 | static const struct super_operations v9fs_super_ops = { |