]> Git Repo - linux.git/blobdiff - fs/nfs/proc.c
NFSv4: Handle case where the lookup of a directory fails
[linux.git] / fs / nfs / proc.c
index ea19dbf123014db5ada823c07a25ea5bd6bf1487..73dcaa99fa9bac846897150f76b53af4b8ff2664 100644 (file)
@@ -91,7 +91,7 @@ nfs_proc_get_root(struct nfs_server *server, struct nfs_fh *fhandle,
        info->dtpref = fsinfo.tsize;
        info->maxfilesize = 0x7FFFFFFF;
        info->lease_time = 0;
-       info->change_attr_type = NFS4_CHANGE_TYPE_IS_TIME_METADATA;
+       info->change_attr_type = NFS4_CHANGE_TYPE_IS_UNDEFINED;
        return 0;
 }
 
@@ -100,8 +100,7 @@ nfs_proc_get_root(struct nfs_server *server, struct nfs_fh *fhandle,
  */
 static int
 nfs_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle,
-               struct nfs_fattr *fattr, struct nfs4_label *label,
-               struct inode *inode)
+               struct nfs_fattr *fattr, struct inode *inode)
 {
        struct rpc_message msg = {
                .rpc_proc       = &nfs_procedures[NFSPROC_GETATTR],
@@ -154,8 +153,7 @@ nfs_proc_setattr(struct dentry *dentry, struct nfs_fattr *fattr,
 
 static int
 nfs_proc_lookup(struct inode *dir, struct dentry *dentry,
-               struct nfs_fh *fhandle, struct nfs_fattr *fattr,
-               struct nfs4_label *label)
+               struct nfs_fh *fhandle, struct nfs_fattr *fattr)
 {
        struct nfs_diropargs    arg = {
                .fh             = NFS_FH(dir),
@@ -257,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);
@@ -304,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);
@@ -436,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);
@@ -465,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);
This page took 0.035351 seconds and 4 git commands to generate.