Whamcloud - gitweb
LU-14195 lustre: remove 'fs' from 'struct lvfs_run_ctxt' 10/40910/3
authorMr NeilBrown <neilb@suse.de>
Wed, 9 Dec 2020 02:11:18 +0000 (13:11 +1100)
committerOleg Drokin <green@whamcloud.com>
Fri, 26 Feb 2021 21:06:23 +0000 (21:06 +0000)
The code protected by push_ctxt() and pop_ctx() never tries to access
any user-space data, so call set_fs() to KERNEL_DS is not needed.

So remove the 'fs' field and related code.

In linux-5.10 this code fails to compile as set_fs() is deprecated.

Test-Parameters: trivial
Signed-off-by: Mr NeilBrown <neilb@suse.de>
Change-Id: Idb2744d656dc4228375b6da54673e38cc1c112f5
Reviewed-on: https://review.whamcloud.com/40910
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/include/lvfs.h
lustre/osd-ldiskfs/osd_compat.c
lustre/osd-ldiskfs/osd_scrub.c
lustre/ptlrpc/sec_ctx.c

index 3544b53..7025155 100644 (file)
@@ -52,7 +52,6 @@ struct dt_device;
 struct lvfs_run_ctxt {
        struct vfsmount         *pwdmnt;
        struct dentry           *pwd;
-       mm_segment_t             fs;
        int                      umask;
        struct dt_device        *dt;
 #ifdef OBD_CTXT_DEBUG
index 8b70faf..56561b6 100644 (file)
@@ -59,7 +59,6 @@ static void osd_push_ctxt(const struct osd_device *dev,
        OBD_SET_CTXT_MAGIC(newctxt);
        newctxt->pwdmnt = dev->od_mnt;
        newctxt->pwd = dev->od_mnt->mnt_root;
-       newctxt->fs = KERNEL_DS;
        newctxt->umask = current_umask();
        newctxt->dt = NULL;
 
index 866dd04..1c4adcc 100644 (file)
@@ -2581,7 +2581,6 @@ int osd_scrub_setup(const struct lu_env *env, struct osd_device *dev)
        OBD_SET_CTXT_MAGIC(ctxt);
        ctxt->pwdmnt = dev->od_mnt;
        ctxt->pwd = dev->od_mnt->mnt_root;
-       ctxt->fs = KERNEL_DS;
 
        init_rwsem(&scrub->os_rwsem);
        spin_lock_init(&scrub->os_lock);
index fffb7f2..a5de864 100644 (file)
@@ -72,7 +72,6 @@ void push_ctxt(struct lvfs_run_ctxt *save, struct lvfs_run_ctxt *new_ctx)
        ASSERT_CTXT_MAGIC(new_ctx->magic);
        OBD_SET_CTXT_MAGIC(save);
 
-       save->fs = get_fs();
        LASSERT(ll_d_count(current->fs->pwd.dentry));
        LASSERT(ll_d_count(new_ctx->pwd));
        save->pwd = dget(current->fs->pwd.dentry);
@@ -85,7 +84,6 @@ void push_ctxt(struct lvfs_run_ctxt *save, struct lvfs_run_ctxt *new_ctx)
        LASSERT(new_ctx->pwdmnt);
 
        current->fs->umask = 0; /* umask already applied on client */
-       set_fs(new_ctx->fs);
        ll_set_fs_pwd(current->fs, new_ctx->pwdmnt, new_ctx->pwd);
 }
 EXPORT_SYMBOL(push_ctxt);
@@ -103,7 +101,6 @@ void pop_ctxt(struct lvfs_run_ctxt *saved, struct lvfs_run_ctxt *new_ctx)
        LASSERTF(current->fs->pwd.mnt == new_ctx->pwdmnt, "%p != %p\n",
                 current->fs->pwd.mnt, new_ctx->pwdmnt);
 
-       set_fs(saved->fs);
        ll_set_fs_pwd(current->fs, saved->pwdmnt, saved->pwd);
 
        dput(saved->pwd);