Message ID | 1349305724-28173-1-git-send-email-iisaman@netapp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/fs/nfs/file.c b/fs/nfs/file.c index a6708e6..fd0155f 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c @@ -765,7 +765,7 @@ do_setlk(struct file *filp, int cmd, struct file_lock *fl, int is_local) * This makes locking act as a cache coherency point. */ nfs_sync_mapping(filp->f_mapping); - if (!nfs_have_delegation(inode, FMODE_READ)) { + if ((!is_local) && !nfs_have_delegation(inode, FMODE_READ)) { if (is_time_granular(&NFS_SERVER(inode)->time_delta)) __nfs_revalidate_inode(NFS_SERVER(inode), inode); else
This drastically improves performance when using lock-heavy workloads that are amenable to using local locks. Signed-off-by: Fred Isaman <iisaman@netapp.com> --- fs/nfs/file.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)