mirror of https://gitee.com/openkylin/linux.git
nilfs2: fix misuse of open_bdev_exclusive/close_bdev_exclusive
The second argument of open_bdev_exclusive/close_bdev_exclusive takes fmode_t flags instead of mount flags. This fixes the misuse. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
This commit is contained in:
parent
400ade845c
commit
13e905592b
|
@ -998,10 +998,14 @@ nilfs_get_sb(struct file_system_type *fs_type, int flags,
|
|||
{
|
||||
struct nilfs_super_data sd;
|
||||
struct super_block *s;
|
||||
fmode_t mode = FMODE_READ;
|
||||
struct the_nilfs *nilfs;
|
||||
int err, need_to_close = 1;
|
||||
|
||||
sd.bdev = open_bdev_exclusive(dev_name, flags, fs_type);
|
||||
if (!(flags & MS_RDONLY))
|
||||
mode |= FMODE_WRITE;
|
||||
|
||||
sd.bdev = open_bdev_exclusive(dev_name, mode, fs_type);
|
||||
if (IS_ERR(sd.bdev))
|
||||
return PTR_ERR(sd.bdev);
|
||||
|
||||
|
@ -1082,7 +1086,7 @@ nilfs_get_sb(struct file_system_type *fs_type, int flags,
|
|||
mutex_unlock(&nilfs->ns_mount_mutex);
|
||||
put_nilfs(nilfs);
|
||||
if (need_to_close)
|
||||
close_bdev_exclusive(sd.bdev, flags);
|
||||
close_bdev_exclusive(sd.bdev, mode);
|
||||
simple_set_mnt(mnt, s);
|
||||
return 0;
|
||||
|
||||
|
@ -1090,7 +1094,7 @@ nilfs_get_sb(struct file_system_type *fs_type, int flags,
|
|||
mutex_unlock(&nilfs->ns_mount_mutex);
|
||||
put_nilfs(nilfs);
|
||||
failed:
|
||||
close_bdev_exclusive(sd.bdev, flags);
|
||||
close_bdev_exclusive(sd.bdev, mode);
|
||||
|
||||
return err;
|
||||
|
||||
|
|
Loading…
Reference in New Issue