Calling pool_init() multiple times is bad. This happens when you kill
nfsd on a machine.
Daniel does this fix your problem?
ok?
Index: nfs_syscalls.c
===================================================================
RCS file: /cvs/src/sys/nfs/nfs_syscalls.c,v
retrieving revision 1.91
diff -u -p -r1.91 nfs_syscalls.c
--- nfs_syscalls.c 7 Aug 2010 03:50:02 -0000 1.91
+++ nfs_syscalls.c 3 Dec 2010 14:06:26 -0000
@@ -549,8 +549,9 @@ nfsrv_init(int terminating)
M_WAITOK|M_ZERO);
TAILQ_INSERT_HEAD(&nfssvc_sockhead, nfs_udpsock, ns_chain);
- pool_init(&nfsrv_descript_pl, sizeof(struct nfsrv_descript), 0, 0, 0,
- "ndscpl", &pool_allocator_nointr);
+ if (!terminating)
+ pool_init(&nfsrv_descript_pl, sizeof(struct nfsrv_descript),
+ 0, 0, 0, "ndscpl", &pool_allocator_nointr);
}
#endif /* NFSSERVER */