nfscl: Add a diagnostic printf() for a "should never happen" case

When a NFSv4.1/4.2 session to the NFS server (not a pNFS DS) is
replaced, the old session should always be marked defunct by
nfsess_defunct being set non-zero.

However, the hang reported by the PR suggests that this might
be the case.

This patch adds a printf() to indicate this has somehow happened.

PR:	260011
MFC after: 	2 weeks
This commit is contained in:
Rick Macklem 2022-05-27 14:32:46 -07:00
parent 425e5c739b
commit a7bb120f8b

View File

@ -1062,8 +1062,12 @@ nfsrpc_setclient(struct nfsmount *nmp, struct nfsclclient *clp, int reclaim,
* in-progress RPCs.
*/
tsep = NULL;
if (TAILQ_FIRST(&nmp->nm_sess) != NULL)
if (TAILQ_FIRST(&nmp->nm_sess) != NULL) {
tsep = NFSMNT_MDSSESSION(nmp);
if (tsep->nfsess_defunct == 0)
printf("nfsrpc_setclient: "
"nfsess_defunct not set\n");
}
TAILQ_INSERT_HEAD(&nmp->nm_sess, dsp,
nfsclds_list);
/*