OSDN Git Service

NFS: Remove the nfs4_label argument from nfs_instantiate()
authorAnna Schumaker <Anna.Schumaker@Netapp.com>
Fri, 22 Oct 2021 17:11:09 +0000 (13:11 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 5 Nov 2021 18:54:39 +0000 (14:54 -0400)
Pull the label from the fattr instead.

Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/dir.c
fs/nfs/nfs4proc.c
fs/nfs/proc.c
include/linux/nfs_fs.h

index aa95a89..48ea69a 100644 (file)
@@ -2075,12 +2075,11 @@ EXPORT_SYMBOL_GPL(nfs_add_or_obtain);
  * Code common to create, mkdir, and mknod.
  */
 int nfs_instantiate(struct dentry *dentry, struct nfs_fh *fhandle,
-                               struct nfs_fattr *fattr,
-                               struct nfs4_label *label)
+                               struct nfs_fattr *fattr)
 {
        struct dentry *d;
 
-       d = nfs_add_or_obtain(dentry, fhandle, fattr, label);
+       d = nfs_add_or_obtain(dentry, fhandle, fattr, fattr->label);
        if (IS_ERR(d))
                return PTR_ERR(d);
 
index a0762ec..4d09c81 100644 (file)
@@ -4859,7 +4859,7 @@ static int nfs4_do_create(struct inode *dir, struct dentry *dentry, struct nfs4_
                                              data->res.fattr->time_start,
                                              NFS_INO_INVALID_DATA);
                spin_unlock(&dir->i_lock);
-               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr, data->res.fattr->label);
+               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr);
        }
        return status;
 }
index baee21c..73dcaa9 100644 (file)
@@ -255,7 +255,7 @@ nfs_proc_create(struct inode *dir, struct dentry *dentry, struct iattr *sattr,
        status = rpc_call_sync(NFS_CLIENT(dir), &msg, 0);
        nfs_mark_for_revalidate(dir);
        if (status == 0)
-               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr, NULL);
+               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr);
        nfs_free_createdata(data);
 out:
        dprintk("NFS reply create: %d\n", status);
@@ -302,7 +302,7 @@ nfs_proc_mknod(struct inode *dir, struct dentry *dentry, struct iattr *sattr,
                status = rpc_call_sync(NFS_CLIENT(dir), &msg, 0);
        }
        if (status == 0)
-               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr, NULL);
+               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr);
        nfs_free_createdata(data);
 out:
        dprintk("NFS reply mknod: %d\n", status);
@@ -434,7 +434,7 @@ nfs_proc_symlink(struct inode *dir, struct dentry *dentry, struct page *page,
         * should fill in the data with a LOOKUP call on the wire.
         */
        if (status == 0)
-               status = nfs_instantiate(dentry, fh, fattr, NULL);
+               status = nfs_instantiate(dentry, fh, fattr);
 
 out_free:
        nfs_free_fattr(fattr);
@@ -463,7 +463,7 @@ nfs_proc_mkdir(struct inode *dir, struct dentry *dentry, struct iattr *sattr)
        status = rpc_call_sync(NFS_CLIENT(dir), &msg, 0);
        nfs_mark_for_revalidate(dir);
        if (status == 0)
-               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr, NULL);
+               status = nfs_instantiate(dentry, data->res.fh, data->res.fattr);
        nfs_free_createdata(data);
 out:
        dprintk("NFS reply mkdir: %d\n", status);
index 88c3aed..a8a9b71 100644 (file)
@@ -532,7 +532,7 @@ extern struct dentry *nfs_add_or_obtain(struct dentry *dentry,
                        struct nfs_fh *fh, struct nfs_fattr *fattr,
                        struct nfs4_label *label);
 extern int nfs_instantiate(struct dentry *dentry, struct nfs_fh *fh,
-                       struct nfs_fattr *fattr, struct nfs4_label *label);
+                       struct nfs_fattr *fattr);
 extern int nfs_may_open(struct inode *inode, const struct cred *cred, int openflags);
 extern void nfs_access_zap_cache(struct inode *inode);
 extern int nfs_access_get_cached(struct inode *inode, const struct cred *cred, struct nfs_access_entry *res,