summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorTrond Myklebust <trondmy@gmail.com>2018-08-16 03:35:45 +0200
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2018-08-16 19:47:09 +0200
commitea51f94b45a0fd657c61206c1b648cc72f95befa (patch)
tree53dc98c4c920a71505c21750cd1537487daa9c91 /fs
parentpNFS: When updating the stateid in layoutreturn, also update the recall range (diff)
downloadlinux-ea51f94b45a0fd657c61206c1b648cc72f95befa.tar.xz
linux-ea51f94b45a0fd657c61206c1b648cc72f95befa.zip
pNFS: Treat RECALLCONFLICT like DELAY...
Yes, it is possible to get trapped in a loop, but the server should be administratively revoking the recalled layout if it never gets returned. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/nfs/pnfs.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
index cf9912a95f5d..e11e666ea477 100644
--- a/fs/nfs/pnfs.c
+++ b/fs/nfs/pnfs.c
@@ -1982,15 +1982,6 @@ lookup_again:
lseg = NULL;
break;
case -ERECALLCONFLICT:
- /* Huh? We hold no layouts, how is there a recall? */
- if (first) {
- lseg = NULL;
- break;
- }
- /* Destroy the existing layout and start over */
- if (time_after(jiffies, giveup))
- pnfs_destroy_layout(NFS_I(ino));
- /* Fallthrough */
case -EAGAIN:
break;
default: