Re: Killing nfsd and then running netstat -m causes lockup

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Mark Kettenis
Date: Friday, December 3, 2010 - 7:09 am

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 */
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: Killing nfsd and then running netstat -m causes lockup, Mark Kettenis, (Fri Dec 3, 7:09 am)
Re: Killing nfsd and then running netstat -m causes lockup, Daniel Melameth, (Fri Dec 3, 9:36 am)
Re: Killing nfsd and then running netstat -m causes lockup, Daniel Melameth, (Fri Dec 3, 11:05 am)