aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2021-04-14 10:27:39 -0400
committerTrond Myklebust <trond.myklebust@hammerspace.com>2021-04-14 10:42:24 -0400
commitfebfeaaefefb6e3a42e4ca279270a740014ce227 (patch)
treec03aab1e0903c869224f128141345616031addce
parentNFSv42: Copy offload should update the file size when appropriate (diff)
downloadlinux-dev-febfeaaefefb6e3a42e4ca279270a740014ce227.tar.xz
linux-dev-febfeaaefefb6e3a42e4ca279270a740014ce227.zip
NFSv42: Don't force attribute revalidation of the copy offload source
When a copy offload is performed, we do not expect the source file to change other than perhaps to see the atime be updated. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
-rw-r--r--fs/nfs/nfs42proc.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/fs/nfs/nfs42proc.c b/fs/nfs/nfs42proc.c
index 3875120ef3ef..a24349512ffe 100644
--- a/fs/nfs/nfs42proc.c
+++ b/fs/nfs/nfs42proc.c
@@ -390,12 +390,7 @@ static ssize_t _nfs42_proc_copy(struct file *src,
}
nfs42_copy_dest_done(dst_inode, pos_dst, res->write_res.count);
-
- spin_lock(&src_inode->i_lock);
- nfs_set_cache_invalid(src_inode, NFS_INO_REVAL_PAGECACHE |
- NFS_INO_REVAL_FORCED |
- NFS_INO_INVALID_ATIME);
- spin_unlock(&src_inode->i_lock);
+ nfs_invalidate_atime(src_inode);
status = res->write_res.count;
out:
if (args->sync)