Commit 771734f2 authored by Trond Myklebust's avatar Trond Myklebust Committed by Trond Myklebust

NFSv4: Don't ask for delegated attributes when revalidating the inode

Again, when revalidating the inode, we don't need to ask for attributes
for which we are authoritative.
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent a841b54d
...@@ -3832,9 +3832,10 @@ static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, ...@@ -3832,9 +3832,10 @@ static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle,
struct nfs_fattr *fattr, struct nfs4_label *label, struct nfs_fattr *fattr, struct nfs4_label *label,
struct inode *inode) struct inode *inode)
{ {
__u32 bitmask[NFS4_BITMASK_SZ];
struct nfs4_getattr_arg args = { struct nfs4_getattr_arg args = {
.fh = fhandle, .fh = fhandle,
.bitmask = server->attr_bitmask, .bitmask = bitmask,
}; };
struct nfs4_getattr_res res = { struct nfs4_getattr_res res = {
.fattr = fattr, .fattr = fattr,
...@@ -3847,7 +3848,7 @@ static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, ...@@ -3847,7 +3848,7 @@ static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle,
.rpc_resp = &res, .rpc_resp = &res,
}; };
args.bitmask = nfs4_bitmask(server, label); nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, label), inode);
nfs_fattr_init(fattr); nfs_fattr_init(fattr);
return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment