[PATCH 6/6] NFS: return -EAGAIN when skipped commit in nfs_commit_unstable_pages()

Wu Fengguang
2011-04-19T03:10:25Z

[-- Attachment #1: nfs-fix-write_inode-retval.patch --]
[-- Type: text/plain, Size: 701 bytes --]

It's probably not sane to return success while redirtying the inode at
the same time in ->write_inode().

CC: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
---
fs/nfs/write.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-next.orig/fs/nfs/write.c 2011-04-19 10:18:16.000000000 +0800
+++ linux-next/fs/nfs/write.c 2011-04-19 10:18:32.000000000 +0800
@@ -1519,7 +1519,7 @@ static int nfs_commit_unstable_pages(str
{
struct nfs_inode *nfsi = NFS_I(inode);
int flags = FLUSH_SYNC;
- int ret = 0;
+ int ret = -EAGAIN;

if (wbc->sync_mode == WB_SYNC_NONE) {
/* Don't commit yet if this is a non-blocking flush and there