diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-03-03 00:06:35 -0500 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-03-03 13:58:08 -0500 |
commit | ef070dcb3989f553f5d84edf555eebc7e204099d (patch) | |
tree | 57a10c226e43b7eb28b03786591164686d88fbf5 /fs/nfs/inode.c | |
parent | NFS: Fix a regression in the read() syscall (diff) | |
download | linux-dev-ef070dcb3989f553f5d84edf555eebc7e204099d.tar.xz linux-dev-ef070dcb3989f553f5d84edf555eebc7e204099d.zip |
NFS: Don't write enable new pages while an invalidation is proceeding
nfs_vm_page_mkwrite() should wait until the page cache invalidation
is finished. This is the second patch in a 2 patch series to deprecate
the NFS client's reliance on nfs_release_page() in the context of
nfs_invalidate_mapping().
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to '')
-rw-r--r-- | fs/nfs/inode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index 8edb7d049565..d42dff6d5e98 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c @@ -1035,6 +1035,7 @@ static int nfs_invalidate_mapping(struct inode *inode, struct address_space *map if (mapping->nrpages != 0) { if (S_ISREG(inode->i_mode)) { + unmap_mapping_range(mapping, 0, 0, 0); ret = nfs_sync_mapping(mapping); if (ret < 0) return ret; |