Convert obvious places to deactivate_locked_super()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Родитель
74dbbdd7fd
Коммит
6f5bbff9a1
|
@ -74,8 +74,7 @@ static int get_sb_mtd_aux(struct file_system_type *fs_type, int flags,
|
||||||
|
|
||||||
ret = fill_super(sb, data, flags & MS_SILENT ? 1 : 0);
|
ret = fill_super(sb, data, flags & MS_SILENT ? 1 : 0);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -174,10 +174,7 @@ P9_DPRINTK(P9_DEBUG_VFS, " simple set mount, return 0\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
release_sb:
|
release_sb:
|
||||||
if (sb) {
|
deactivate_locked_super(sb);
|
||||||
up_write(&sb->s_umount);
|
|
||||||
deactivate_super(sb);
|
|
||||||
}
|
|
||||||
|
|
||||||
free_stat:
|
free_stat:
|
||||||
kfree(st);
|
kfree(st);
|
||||||
|
|
|
@ -405,8 +405,7 @@ static int afs_get_sb(struct file_system_type *fs_type,
|
||||||
sb->s_flags = flags;
|
sb->s_flags = flags;
|
||||||
ret = afs_fill_super(sb, ¶ms);
|
ret = afs_fill_super(sb, ¶ms);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
sb->s_options = new_opts;
|
sb->s_options = new_opts;
|
||||||
|
|
|
@ -502,8 +502,7 @@ static int btrfs_get_sb(struct file_system_type *fs_type, int flags,
|
||||||
|
|
||||||
if (s->s_root) {
|
if (s->s_root) {
|
||||||
if ((flags ^ s->s_flags) & MS_RDONLY) {
|
if ((flags ^ s->s_flags) & MS_RDONLY) {
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
error = -EBUSY;
|
error = -EBUSY;
|
||||||
goto error_close_devices;
|
goto error_close_devices;
|
||||||
}
|
}
|
||||||
|
@ -517,8 +516,7 @@ static int btrfs_get_sb(struct file_system_type *fs_type, int flags,
|
||||||
error = btrfs_fill_super(s, fs_devices, data,
|
error = btrfs_fill_super(s, fs_devices, data,
|
||||||
flags & MS_SILENT ? 1 : 0);
|
flags & MS_SILENT ? 1 : 0);
|
||||||
if (error) {
|
if (error) {
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
goto error_free_subvol_name;
|
goto error_free_subvol_name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -535,15 +533,13 @@ static int btrfs_get_sb(struct file_system_type *fs_type, int flags,
|
||||||
mutex_unlock(&s->s_root->d_inode->i_mutex);
|
mutex_unlock(&s->s_root->d_inode->i_mutex);
|
||||||
|
|
||||||
if (IS_ERR(root)) {
|
if (IS_ERR(root)) {
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
error = PTR_ERR(root);
|
error = PTR_ERR(root);
|
||||||
goto error_free_subvol_name;
|
goto error_free_subvol_name;
|
||||||
}
|
}
|
||||||
if (!root->d_inode) {
|
if (!root->d_inode) {
|
||||||
dput(root);
|
dput(root);
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
error = -ENXIO;
|
error = -ENXIO;
|
||||||
goto error_free_subvol_name;
|
goto error_free_subvol_name;
|
||||||
}
|
}
|
||||||
|
|
|
@ -602,8 +602,7 @@ cifs_get_sb(struct file_system_type *fs_type,
|
||||||
|
|
||||||
rc = cifs_read_super(sb, data, dev_name, flags & MS_SILENT ? 1 : 0);
|
rc = cifs_read_super(sb, data, dev_name, flags & MS_SILENT ? 1 : 0);
|
||||||
if (rc) {
|
if (rc) {
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
sb->s_flags |= MS_ACTIVE;
|
sb->s_flags |= MS_ACTIVE;
|
||||||
|
|
|
@ -389,11 +389,10 @@ static int devpts_get_sb(struct file_system_type *fs_type,
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_dput:
|
out_dput:
|
||||||
dput(s->s_root);
|
dput(s->s_root); /* undo dget() in simple_set_mnt() */
|
||||||
|
|
||||||
out_undo_sget:
|
out_undo_sget:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -614,9 +614,8 @@ static int ecryptfs_get_sb(struct file_system_type *fs_type, int flags,
|
||||||
}
|
}
|
||||||
goto out;
|
goto out;
|
||||||
out_abort:
|
out_abort:
|
||||||
dput(sb->s_root);
|
dput(sb->s_root); /* aka mnt->mnt_root, as set by get_sb_nodev() */
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
out:
|
out:
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
|
@ -246,8 +246,7 @@ int get_sb_pseudo(struct file_system_type *fs_type, char *name,
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
Enomem:
|
Enomem:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2111,8 +2111,7 @@ out_err_nosb:
|
||||||
error_splat_root:
|
error_splat_root:
|
||||||
dput(mntroot);
|
dput(mntroot);
|
||||||
error_splat_super:
|
error_splat_super:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2208,8 +2207,7 @@ out_err_noserver:
|
||||||
return error;
|
return error;
|
||||||
|
|
||||||
error_splat_super:
|
error_splat_super:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
dprintk("<-- nfs_xdev_get_sb() = %d [splat]\n", error);
|
dprintk("<-- nfs_xdev_get_sb() = %d [splat]\n", error);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
@ -2469,8 +2467,7 @@ out_free:
|
||||||
error_splat_root:
|
error_splat_root:
|
||||||
dput(mntroot);
|
dput(mntroot);
|
||||||
error_splat_super:
|
error_splat_super:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2564,8 +2561,7 @@ out_err_noserver:
|
||||||
return error;
|
return error;
|
||||||
|
|
||||||
error_splat_super:
|
error_splat_super:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
dprintk("<-- nfs4_xdev_get_sb() = %d [splat]\n", error);
|
dprintk("<-- nfs4_xdev_get_sb() = %d [splat]\n", error);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
@ -2649,8 +2645,7 @@ out_err_noserver:
|
||||||
return error;
|
return error;
|
||||||
|
|
||||||
error_splat_super:
|
error_splat_super:
|
||||||
up_write(&s->s_umount);
|
deactivate_locked_super(s);
|
||||||
deactivate_super(s);
|
|
||||||
dprintk("<-- nfs4_referral_get_sb() = %d [splat]\n", error);
|
dprintk("<-- nfs4_referral_get_sb() = %d [splat]\n", error);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,8 +67,7 @@ static int proc_get_sb(struct file_system_type *fs_type,
|
||||||
sb->s_flags = flags;
|
sb->s_flags = flags;
|
||||||
err = proc_fill_super(sb);
|
err = proc_fill_super(sb);
|
||||||
if (err) {
|
if (err) {
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2055,8 +2055,7 @@ static int ubifs_get_sb(struct file_system_type *fs_type, int flags,
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_deact:
|
out_deact:
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
out_close:
|
out_close:
|
||||||
ubi_close_volume(ubi);
|
ubi_close_volume(ubi);
|
||||||
return err;
|
return err;
|
||||||
|
|
|
@ -1133,8 +1133,7 @@ static int cgroup_get_sb(struct file_system_type *fs_type,
|
||||||
free_cg_links:
|
free_cg_links:
|
||||||
free_cg_links(&tmp_cg_links);
|
free_cg_links(&tmp_cg_links);
|
||||||
drop_new_super:
|
drop_new_super:
|
||||||
up_write(&sb->s_umount);
|
deactivate_locked_super(sb);
|
||||||
deactivate_super(sb);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче