nfsd: Update console message for no session found

The NFSv4.1/4.2 server generates a console message that indicates
that there is no session. I was until recently perplexed w.r.t. how
this could occur. It turns out that the common cause is multiple NFS
clients with the same /etc/hostid.

The host uuid is used by the FreeBSD NFSv4.1/4.2 client as a unique
identifier for the client. If multiple clients use the same host uuid,
this indicates to the NFSv4.1/4.2 server that they are the same client
and confusion occurs.

This trivial patch modifies the console message to suggest that the
client's /etc/hostid needs to be checked for uniqueness.

Reviewed by:	asomers
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D36377
This commit is contained in:
Rick Macklem 2022-08-27 18:31:20 -07:00
parent fb29f81758
commit b875d4f5dd

View File

@ -6383,9 +6383,12 @@ nfsrv_cache_session(struct nfsrv_descript *nd, struct mbuf **m)
}
if (cp != NULL)
printf("nfsrv_cache_session: no session "
"IPaddr=%s\n", cp);
"IPaddr=%s, check NFS clients for unique "
"/etc/hostid's\n", cp);
else
printf("nfsrv_cache_session: no session\n");
printf("nfsrv_cache_session: no session, "
"check NFS clients for unique "
"/etc/hostid's\n");
free(buf, M_TEMP);
}
m_freem(*m);