aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <trondmy@gmail.com>2018-08-15 21:35:45 -0400
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2018-08-16 13:47:09 -0400
commitea51f94b45a0fd657c61206c1b648cc72f95befa (patch)
tree53dc98c4c920a71505c21750cd1537487daa9c91
parentecf8402603d4df1278231439bbe5e92af4e02a17 (diff)
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>
-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:
1982 lseg = NULL; 1982 lseg = NULL;
1983 break; 1983 break;
1984 case -ERECALLCONFLICT: 1984 case -ERECALLCONFLICT:
1985 /* Huh? We hold no layouts, how is there a recall? */
1986 if (first) {
1987 lseg = NULL;
1988 break;
1989 }
1990 /* Destroy the existing layout and start over */
1991 if (time_after(jiffies, giveup))
1992 pnfs_destroy_layout(NFS_I(ino));
1993 /* Fallthrough */
1994 case -EAGAIN: 1985 case -EAGAIN:
1995 break; 1986 break;
1996 default: 1987 default: