diff options
author | Trond Myklebust <trond.myklebust@hammerspace.com> | 2019-08-15 12:26:05 -0400 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@hammerspace.com> | 2019-08-26 15:31:29 -0400 |
commit | 8f54c7a4babf58bbaf849e126f7ae9664bdc9e04 (patch) | |
tree | 86afff853c994e30fa86df68064eb1e8578d4126 /fs/nfs/write.c | |
parent | 7af46292dadcf8870946916f79fdddf79bd7267f (diff) |
NFS: Fix spurious EIO read errors
If the client attempts to read a page, but the read fails due to some
spurious error (e.g. an ACCESS error or a timeout, ...) then we need
to allow other processes to retry.
Also try to report errors correctly when doing a synchronous readpage.
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Diffstat (limited to 'fs/nfs/write.c')
-rw-r--r-- | fs/nfs/write.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/fs/nfs/write.c b/fs/nfs/write.c index 3399149435ce..cee9905e419c 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c | |||
@@ -599,18 +599,6 @@ static void nfs_write_error(struct nfs_page *req, int error) | |||
599 | nfs_release_request(req); | 599 | nfs_release_request(req); |
600 | } | 600 | } |
601 | 601 | ||
602 | static bool | ||
603 | nfs_error_is_fatal_on_server(int err) | ||
604 | { | ||
605 | switch (err) { | ||
606 | case 0: | ||
607 | case -ERESTARTSYS: | ||
608 | case -EINTR: | ||
609 | return false; | ||
610 | } | ||
611 | return nfs_error_is_fatal(err); | ||
612 | } | ||
613 | |||
614 | /* | 602 | /* |
615 | * Find an associated nfs write request, and prepare to flush it out | 603 | * Find an associated nfs write request, and prepare to flush it out |
616 | * May return an error if the user signalled nfs_wait_on_request(). | 604 | * May return an error if the user signalled nfs_wait_on_request(). |