Page MenuHomeFreeBSD

rpc_generic.c: Add CURVNET_SET/CURVNET_RESTORE around clnt_call_mbuf
AbandonedPublic

Authored by rmacklem on May 17 2025, 9:02 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Dec 11, 1:16 AM
Unknown Object (File)
Nov 5 2025, 5:28 AM
Unknown Object (File)
Oct 26 2025, 8:08 PM
Unknown Object (File)
Oct 26 2025, 8:08 PM
Unknown Object (File)
Oct 26 2025, 2:24 PM
Unknown Object (File)
Oct 3 2025, 4:56 PM
Unknown Object (File)
Sep 28 2025, 12:19 AM
Unknown Object (File)
Sep 22 2025, 12:39 PM
Subscribers

Details

Reviewers
glebius
bz
Summary

During recent testing at a NFSv4 Bakeathon, I had a panic
that a vnet was not set in clnt_nl_call(). The call was done
from clnt_call_private() in rpc_generic.c.

Adding CURVNET_SET(TD_TO_VNET())/CURVNET_RESTORE
avoided further panics.

Test Plan

Tested while using NFSv4 mounts over TLS during a
recent NFSv4 Bakeathon testing event.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

I realized that this is a NFS client side call,
so it needs to set vnet0.
I'll do that in the specific RPC-over-TLS code.