The only pool_get() call uses PR_WAITOK, and the pool_put() calls are only done from the nfsd main loop, so process context.
No I'm not an NFS hacker! ok? Index: nfs_syscalls.c =================================================================== RCS file: /cvs/src/sys/nfs/nfs_syscalls.c,v retrieving revision 1.103 diff -u -p -r1.103 nfs_syscalls.c --- nfs_syscalls.c 15 Jul 2015 22:16:42 -0000 1.103 +++ nfs_syscalls.c 3 Sep 2015 20:59:28 -0000 @@ -547,7 +547,7 @@ nfsrv_init(int terminating) if (!terminating) pool_init(&nfsrv_descript_pl, sizeof(struct nfsrv_descript), - 0, 0, 0, "ndscpl", &pool_allocator_nointr); + 0, 0, PR_WAITOK, "ndscpl", NULL); } #endif /* NFSSERVER */