mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-16 17:23:55 +08:00
pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE
If the server tells us that a pNFS layout is not available for a
specific file, then we should not keep pounding it with further
layoutget requests.
Fixes: 183d9e7b11
("pnfs: rework LAYOUTGET retry handling")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
parent
f2906aa863
commit
fe44fb23d6
@ -2152,6 +2152,12 @@ lookup_again:
|
|||||||
case -ERECALLCONFLICT:
|
case -ERECALLCONFLICT:
|
||||||
case -EAGAIN:
|
case -EAGAIN:
|
||||||
break;
|
break;
|
||||||
|
case -ENODATA:
|
||||||
|
/* The server returned NFS4ERR_LAYOUTUNAVAILABLE */
|
||||||
|
pnfs_layout_set_fail_bit(
|
||||||
|
lo, pnfs_iomode_to_fail_bit(iomode));
|
||||||
|
lseg = NULL;
|
||||||
|
goto out_put_layout_hdr;
|
||||||
default:
|
default:
|
||||||
if (!nfs_error_is_fatal(PTR_ERR(lseg))) {
|
if (!nfs_error_is_fatal(PTR_ERR(lseg))) {
|
||||||
pnfs_layout_clear_fail_bit(lo, pnfs_iomode_to_fail_bit(iomode));
|
pnfs_layout_clear_fail_bit(lo, pnfs_iomode_to_fail_bit(iomode));
|
||||||
|
Loading…
Reference in New Issue
Block a user