mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
NFS: Fix attribute delegation behaviour on exclusive create
When the client does an exclusive create and the server decides to store
the verifier in the timestamps, a SETATTR is subsequently sent to fix up
those timestamps. When that is the case, suppress the exceptions for
attribute delegations in nfs4_bitmap_copy_adjust().
Fixes: 32215c1f89
("NFSv4: Don't request atime/mtime/size if they are delegated to us")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
This commit is contained in:
parent
dc270d7159
commit
d054c5eb28
@ -3452,6 +3452,10 @@ static int nfs4_do_setattr(struct inode *inode, const struct cred *cred,
|
||||
adjust_flags |= NFS_INO_INVALID_MODE;
|
||||
if (sattr->ia_valid & (ATTR_UID | ATTR_GID))
|
||||
adjust_flags |= NFS_INO_INVALID_OTHER;
|
||||
if (sattr->ia_valid & ATTR_ATIME)
|
||||
adjust_flags |= NFS_INO_INVALID_ATIME;
|
||||
if (sattr->ia_valid & ATTR_MTIME)
|
||||
adjust_flags |= NFS_INO_INVALID_MTIME;
|
||||
|
||||
do {
|
||||
nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, fattr->label),
|
||||
|
Loading…
Reference in New Issue
Block a user