summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2015-03-26 20:55:49 +0100
committerTrond Myklebust <trond.myklebust@primarydata.com>2015-03-27 17:39:37 +0100
commitd9dabc1a01656868d53a1d08309ca24d922b1376 (patch)
tree5b716e728a374c8be25a6e03ad3b82901b3b0006 /fs
parentNFS: Add a helper to sync both O_DIRECT and buffered writes (diff)
downloadlinux-d9dabc1a01656868d53a1d08309ca24d922b1376.tar.xz
linux-d9dabc1a01656868d53a1d08309ca24d922b1376.zip
NFS: File unlock needs to be a metadata synchronisation point
File unlock needs to update both data and metadata on the NFS server in order to act as a synchronisation point for other clients. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/nfs/file.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/file.c b/fs/nfs/file.c
index e679d24c39d3..6959cb76744b 100644
--- a/fs/nfs/file.c
+++ b/fs/nfs/file.c
@@ -780,7 +780,7 @@ do_unlk(struct file *filp, int cmd, struct file_lock *fl, int is_local)
* Flush all pending writes before doing anything
* with locks..
*/
- nfs_sync_mapping(filp->f_mapping);
+ vfs_fsync(filp, 0);
l_ctx = nfs_get_lock_context(nfs_file_open_context(filp));
if (!IS_ERR(l_ctx)) {