aboutsummaryrefslogtreecommitdiffstats
path: root/fs/9p/vfs_super.c
diff options
context:
space:
mode:
authorAlessio Igor Bogani <abogani@texware.it>2009-04-24 03:06:53 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2009-05-09 10:49:38 -0400
commit67e55205ec55cc7899f1d783f217961596798419 (patch)
tree45dd7351f9721a46ecb448f0571fb10db3259147 /fs/9p/vfs_super.c
parent091bf7624d1c90cec9e578a18529f615213ff847 (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.c6
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)
230static void 231static void
231v9fs_umount_begin(struct super_block *sb) 232v9fs_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
238static const struct super_operations v9fs_super_ops = { 242static const struct super_operations v9fs_super_ops = {