git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branches 'irq-core-for-linus' and 'core-locking-for-linus' of git://git.kernel...
[pandora-kernel.git]
/
fs
/
hpfs
/
super.c
diff --git
a/fs/hpfs/super.c
b/fs/hpfs/super.c
index
2607010
..
6c5f015
100644
(file)
--- a/
fs/hpfs/super.c
+++ b/
fs/hpfs/super.c
@@
-477,17
+477,21
@@
static int hpfs_fill_super(struct super_block *s, void *options, int silent)
int o;
int o;
+ lock_kernel();
+
save_mount_options(s, options);
sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
save_mount_options(s, options);
sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
- if (!sbi)
+ if (!sbi) {
+ unlock_kernel();
return -ENOMEM;
return -ENOMEM;
+ }
s->s_fs_info = sbi;
sbi->sb_bmp_dir = NULL;
sbi->sb_cp_table = NULL;
s->s_fs_info = sbi;
sbi->sb_bmp_dir = NULL;
sbi->sb_cp_table = NULL;
-
init_MUTEX
(&sbi->hpfs_creation_de);
+
mutex_init
(&sbi->hpfs_creation_de);
uid = current_uid();
gid = current_gid();
uid = current_uid();
gid = current_gid();
@@
-666,6
+670,7
@@
static int hpfs_fill_super(struct super_block *s, void *options, int silent)
root->i_blocks = 5;
hpfs_brelse4(&qbh);
}
root->i_blocks = 5;
hpfs_brelse4(&qbh);
}
+ unlock_kernel();
return 0;
bail4: brelse(bh2);
return 0;
bail4: brelse(bh2);
@@
-677,20
+682,20
@@
bail0:
kfree(sbi->sb_cp_table);
s->s_fs_info = NULL;
kfree(sbi);
kfree(sbi->sb_cp_table);
s->s_fs_info = NULL;
kfree(sbi);
+ unlock_kernel();
return -EINVAL;
}
return -EINVAL;
}
-static
int hpfs_get_sb
(struct file_system_type *fs_type,
- int flags, const char *dev_name, void *data
, struct vfsmount *mnt
)
+static
struct dentry *hpfs_mount
(struct file_system_type *fs_type,
+ int flags, const char *dev_name, void *data)
{
{
- return get_sb_bdev(fs_type, flags, dev_name, data, hpfs_fill_super,
- mnt);
+ return mount_bdev(fs_type, flags, dev_name, data, hpfs_fill_super);
}
static struct file_system_type hpfs_fs_type = {
.owner = THIS_MODULE,
.name = "hpfs",
}
static struct file_system_type hpfs_fs_type = {
.owner = THIS_MODULE,
.name = "hpfs",
- .
get_sb = hpfs_get_sb
,
+ .
mount = hpfs_mount
,
.kill_sb = kill_block_super,
.fs_flags = FS_REQUIRES_DEV,
};
.kill_sb = kill_block_super,
.fs_flags = FS_REQUIRES_DEV,
};