Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

NFSv4: handle ERR_GRACE on delegation recalls

RFC7530 states that clients should be prepared for the return of
NFS4ERR_GRACE errors for non-reclaim lock and I/O requests.

Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>

authored by

Olga Kornievskaia and committed by
Anna Schumaker
be390f95 ec7d8e68

+2 -2
+2 -2
fs/nfs/nfs4proc.c
··· 7872 7872 return err; 7873 7873 do { 7874 7874 err = _nfs4_do_setlk(state, F_SETLK, fl, NFS_LOCK_NEW); 7875 - if (err != -NFS4ERR_DELAY) 7875 + if (err != -NFS4ERR_DELAY && err != -NFS4ERR_GRACE) 7876 7876 break; 7877 7877 ssleep(1); 7878 - } while (err == -NFS4ERR_DELAY); 7878 + } while (err == -NFS4ERR_DELAY || err == -NFSERR_GRACE); 7879 7879 return nfs4_handle_delegation_recall_error(server, state, stateid, fl, err); 7880 7880 } 7881 7881