mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 04:33:26 +02:00
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull vfs mount updates from Al Viro: "The first part of mount updates. Convert filesystems to use the new mount API" * 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (63 commits) mnt_init(): call shmem_init() unconditionally constify ksys_mount() string arguments don't bother with registering rootfs init_rootfs(): don't bother with init_ramfs_fs() vfs: Convert smackfs to use the new mount API vfs: Convert selinuxfs to use the new mount API vfs: Convert securityfs to use the new mount API vfs: Convert apparmorfs to use the new mount API vfs: Convert openpromfs to use the new mount API vfs: Convert xenfs to use the new mount API vfs: Convert gadgetfs to use the new mount API vfs: Convert oprofilefs to use the new mount API vfs: Convert ibmasmfs to use the new mount API vfs: Convert qib_fs/ipathfs to use the new mount API vfs: Convert efivarfs to use the new mount API vfs: Convert configfs to use the new mount API vfs: Convert binfmt_misc to use the new mount API convenience helper: get_tree_single() convenience helper get_tree_nodev() vfs: Kill sget_userns() ...
This commit is contained in:
@@ -364,8 +364,6 @@ static int mqueue_get_tree(struct fs_context *fc)
|
||||
{
|
||||
struct mqueue_fs_context *ctx = fc->fs_private;
|
||||
|
||||
put_user_ns(fc->user_ns);
|
||||
fc->user_ns = get_user_ns(ctx->ipc_ns->user_ns);
|
||||
fc->s_fs_info = ctx->ipc_ns;
|
||||
return vfs_get_super(fc, vfs_get_keyed_super, mqueue_fill_super);
|
||||
}
|
||||
@@ -374,8 +372,7 @@ static void mqueue_fs_context_free(struct fs_context *fc)
|
||||
{
|
||||
struct mqueue_fs_context *ctx = fc->fs_private;
|
||||
|
||||
if (ctx->ipc_ns)
|
||||
put_ipc_ns(ctx->ipc_ns);
|
||||
put_ipc_ns(ctx->ipc_ns);
|
||||
kfree(ctx);
|
||||
}
|
||||
|
||||
@@ -388,6 +385,8 @@ static int mqueue_init_fs_context(struct fs_context *fc)
|
||||
return -ENOMEM;
|
||||
|
||||
ctx->ipc_ns = get_ipc_ns(current->nsproxy->ipc_ns);
|
||||
put_user_ns(fc->user_ns);
|
||||
fc->user_ns = get_user_ns(ctx->ipc_ns->user_ns);
|
||||
fc->fs_private = ctx;
|
||||
fc->ops = &mqueue_fs_context_ops;
|
||||
return 0;
|
||||
@@ -406,6 +405,8 @@ static struct vfsmount *mq_create_mount(struct ipc_namespace *ns)
|
||||
ctx = fc->fs_private;
|
||||
put_ipc_ns(ctx->ipc_ns);
|
||||
ctx->ipc_ns = get_ipc_ns(ns);
|
||||
put_user_ns(fc->user_ns);
|
||||
fc->user_ns = get_user_ns(ctx->ipc_ns->user_ns);
|
||||
|
||||
mnt = fc_mount(fc);
|
||||
put_fs_context(fc);
|
||||
|
Reference in New Issue
Block a user