MFC: r333579

The NFSv4.1 server should return NFSERR_BACKCHANBUSY instead of NFS_OK.

When an NFSv4.1 session is busy due to a callback being in progress,
nfsrv_freesession() should return NFSERR_BACKCHANBUSY instead of NFS_OK.
The only effect this has is that the DestroySession operation will report
the failure for this case and this probably has little or no effect on a
client. Spotted by inspection and no failures related to this have been
reported.
This commit is contained in:
Rick Macklem 2018-07-12 22:59:02 +00:00
parent d6c658db1f
commit 390a21dac2
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/stable/10/; revision=336234

View File

@ -6002,7 +6002,7 @@ nfsrv_freesession(struct nfsdsession *sep, uint8_t *sessionid)
if (sep->sess_refcnt > 0) {
NFSUNLOCKSESSION(shp);
NFSUNLOCKSTATE();
return (0);
return (NFSERR_BACKCHANBUSY);
}
LIST_REMOVE(sep, sess_hash);
LIST_REMOVE(sep, sess_list);