|
@@ -17,7 +17,6 @@
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/nls.h>
|
|
|
#include <linux/ctype.h>
|
|
|
-#include <linux/smp_lock.h>
|
|
|
#include <linux/statfs.h>
|
|
|
#include <linux/cdrom.h>
|
|
|
#include <linux/parser.h>
|
|
@@ -44,11 +43,7 @@ static void isofs_put_super(struct super_block *sb)
|
|
|
struct isofs_sb_info *sbi = ISOFS_SB(sb);
|
|
|
|
|
|
#ifdef CONFIG_JOLIET
|
|
|
- lock_kernel();
|
|
|
-
|
|
|
unload_nls(sbi->s_nls_iocharset);
|
|
|
-
|
|
|
- unlock_kernel();
|
|
|
#endif
|
|
|
|
|
|
kfree(sbi);
|
|
@@ -571,15 +566,11 @@ static int isofs_fill_super(struct super_block *s, void *data, int silent)
|
|
|
int table, error = -EINVAL;
|
|
|
unsigned int vol_desc_start;
|
|
|
|
|
|
- lock_kernel();
|
|
|
-
|
|
|
save_mount_options(s, data);
|
|
|
|
|
|
sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
|
|
|
- if (!sbi) {
|
|
|
- unlock_kernel();
|
|
|
+ if (!sbi)
|
|
|
return -ENOMEM;
|
|
|
- }
|
|
|
s->s_fs_info = sbi;
|
|
|
|
|
|
if (!parse_options((char *)data, &opt))
|
|
@@ -827,6 +818,7 @@ root_found:
|
|
|
sbi->s_utf8 = opt.utf8;
|
|
|
sbi->s_nocompress = opt.nocompress;
|
|
|
sbi->s_overriderockperm = opt.overriderockperm;
|
|
|
+ mutex_init(&sbi->s_mutex);
|
|
|
/*
|
|
|
* It would be incredibly stupid to allow people to mark every file
|
|
|
* on the disk as suid, so we merely allow them to set the default
|
|
@@ -904,7 +896,6 @@ root_found:
|
|
|
|
|
|
kfree(opt.iocharset);
|
|
|
|
|
|
- unlock_kernel();
|
|
|
return 0;
|
|
|
|
|
|
/*
|
|
@@ -944,7 +935,6 @@ out_freesbi:
|
|
|
kfree(opt.iocharset);
|
|
|
kfree(sbi);
|
|
|
s->s_fs_info = NULL;
|
|
|
- unlock_kernel();
|
|
|
return error;
|
|
|
}
|
|
|
|
|
@@ -983,8 +973,6 @@ int isofs_get_blocks(struct inode *inode, sector_t iblock_s,
|
|
|
int section, rv, error;
|
|
|
struct iso_inode_info *ei = ISOFS_I(inode);
|
|
|
|
|
|
- lock_kernel();
|
|
|
-
|
|
|
error = -EIO;
|
|
|
rv = 0;
|
|
|
if (iblock < 0 || iblock != iblock_s) {
|
|
@@ -1060,7 +1048,6 @@ int isofs_get_blocks(struct inode *inode, sector_t iblock_s,
|
|
|
|
|
|
error = 0;
|
|
|
abort:
|
|
|
- unlock_kernel();
|
|
|
return rv != 0 ? rv : error;
|
|
|
}
|
|
|
|