From owner-cvs-all Tue Oct 16 14:55:58 2001 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id C0F2B37B40C; Tue, 16 Oct 2001 14:55:53 -0700 (PDT) Received: (from iedowse@localhost) by freefall.freebsd.org (8.11.4/8.11.4) id f9GLtr923165; Tue, 16 Oct 2001 14:55:53 -0700 (PDT) (envelope-from iedowse) Message-Id: <200110162155.f9GLtr923165@freefall.freebsd.org> From: Ian Dowse Date: Tue, 16 Oct 2001 14:55:53 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sbin/nfsd nfsd.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG iedowse 2001/10/16 14:55:53 PDT Modified files: sbin/nfsd nfsd.c Log: When nfsd was started with only UDP servers, the master nfsd would spin in a loop eating CPU time. This bug has existed since the TI-RPC import. The problem is that we should only enter the select loop if at least one TCP server was started. Fix this by having the master nfsd become a UDP server itself if there are no TCP servers. Also improve/correct the code for cleaning up slave nfsd processes and unregistering with rpcbind when the master nfsd exits. One issue that remains open is that if a slave nfsd dies, then all nfsds will shut down. This is because nfssvc() in the master nfsd returns 0 when the master nfsd receives a SIGCHLD. Submitted by: tmm Revision Changes Path 1.22 +109 -79 src/sbin/nfsd/nfsd.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message