aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/cifsfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/cifs/cifsfs.c')
-rw-r--r--fs/cifs/cifsfs.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
index b7431afdd76d..50208c15309a 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@ -35,7 +35,6 @@
35#include <linux/delay.h> 35#include <linux/delay.h>
36#include <linux/kthread.h> 36#include <linux/kthread.h>
37#include <linux/freezer.h> 37#include <linux/freezer.h>
38#include <linux/smp_lock.h>
39#include "cifsfs.h" 38#include "cifsfs.h"
40#include "cifspdu.h" 39#include "cifspdu.h"
41#define DECLARE_GLOBALS_HERE 40#define DECLARE_GLOBALS_HERE
@@ -200,8 +199,6 @@ cifs_put_super(struct super_block *sb)
200 return; 199 return;
201 } 200 }
202 201
203 lock_kernel();
204
205 rc = cifs_umount(sb, cifs_sb); 202 rc = cifs_umount(sb, cifs_sb);
206 if (rc) 203 if (rc)
207 cERROR(1, "cifs_umount failed with return code %d", rc); 204 cERROR(1, "cifs_umount failed with return code %d", rc);
@@ -215,8 +212,6 @@ cifs_put_super(struct super_block *sb)
215 unload_nls(cifs_sb->local_nls); 212 unload_nls(cifs_sb->local_nls);
216 bdi_destroy(&cifs_sb->bdi); 213 bdi_destroy(&cifs_sb->bdi);
217 kfree(cifs_sb); 214 kfree(cifs_sb);
218
219 unlock_kernel();
220} 215}
221 216
222static int 217static int
@@ -514,7 +509,9 @@ cifs_get_sb(struct file_system_type *fs_type,
514 int flags, const char *dev_name, void *data, struct vfsmount *mnt) 509 int flags, const char *dev_name, void *data, struct vfsmount *mnt)
515{ 510{
516 int rc; 511 int rc;
517 struct super_block *sb = sget(fs_type, NULL, set_anon_super, NULL); 512 struct super_block *sb;
513
514 sb = sget(fs_type, NULL, set_anon_super, NULL);
518 515
519 cFYI(1, "Devname: %s flags: %d ", dev_name, flags); 516 cFYI(1, "Devname: %s flags: %d ", dev_name, flags);
520 517
@@ -565,8 +562,8 @@ static loff_t cifs_llseek(struct file *file, loff_t offset, int origin)
565 562
566static int cifs_setlease(struct file *file, long arg, struct file_lock **lease) 563static int cifs_setlease(struct file *file, long arg, struct file_lock **lease)
567{ 564{
568 /* note that this is called by vfs setlease with the BKL held 565 /* note that this is called by vfs setlease with lock_flocks held
569 although I doubt that BKL is needed here in cifs */ 566 to protect *lease from going away */
570 struct inode *inode = file->f_path.dentry->d_inode; 567 struct inode *inode = file->f_path.dentry->d_inode;
571 568
572 if (!(S_ISREG(inode->i_mode))) 569 if (!(S_ISREG(inode->i_mode)))