diff options
author | Trond Myklebust <trond.myklebust@hammerspace.com> | 2022-05-14 17:27:04 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-06-09 11:30:36 +0300 |
commit | 678eddfe6055cd128c179b297d4c23f55f5bba9d (patch) | |
tree | e19536e052474c4240053688324d19d30dbef879 | |
parent | 8e98d029a38a5668d8b4f4bead4f32b1ebf61b50 (diff) | |
download | linux-678eddfe6055cd128c179b297d4c23f55f5bba9d.tar.xz |
NFS: Don't report errors from nfs_pageio_complete() more than once
[ Upstream commit c5e483b77cc2edb318da152abe07e33006b975fd ]
Since errors from nfs_pageio_complete() are already being reported
through nfs_async_write_error(), we should not be returning them to the
callers of do_writepages() as well. They will end up being reported
through the generic mechanism instead.
Fixes: 6fbda89b257f ("NFS: Replace custom error reporting mechanism with generic one")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | fs/nfs/write.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/fs/nfs/write.c b/fs/nfs/write.c index e437db1791ba..4925d11849cd 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c @@ -681,11 +681,7 @@ static int nfs_writepage_locked(struct page *page, err = nfs_do_writepage(page, wbc, &pgio); pgio.pg_error = 0; nfs_pageio_complete(&pgio); - if (err < 0) - return err; - if (nfs_error_is_fatal(pgio.pg_error)) - return pgio.pg_error; - return 0; + return err; } int nfs_writepage(struct page *page, struct writeback_control *wbc) @@ -747,9 +743,6 @@ int nfs_writepages(struct address_space *mapping, struct writeback_control *wbc) if (err < 0) goto out_err; - err = pgio.pg_error; - if (nfs_error_is_fatal(err)) - goto out_err; return 0; out_err: return err; |