Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Apr 1998 22:13:03 +0000
From:      Niall Smart <rotel@indigo.ie>
To:        Kyle McPeek <kyle@stdio.com>, hackers@FreeBSD.ORG
Subject:   Re: portmap problem...
Message-ID:  <199804132113.WAA07398@indigo.ie>
In-Reply-To: Kyle McPeek <kyle@stdio.com> "portmap problem..." (Apr 13,  4:28pm)

next in thread | previous in thread | raw e-mail | index | archive | help
On Apr 13,  4:28pm, Kyle McPeek wrote:
} Subject: portmap problem...
> 
> On my name/nis/dhcp server portmap dies occasionally and I find the 
> following messages in the logs:
> 
> Apr  2 20:51:48 harp portmap[110]: svc_run: - select failed: No child 
> processes
> Apr  2 20:51:48 harp portmap[110]: svc_run returned unexpectedly
> Apr  2 20:51:48 harp /kernel: pid 110 (portmap), uid 1: exited on signal 6
>
> I have child_max set to 128 and the limits for daemon set to infinity.
> Any thing else I should do?  Any ideas?

This is very weird, looking at /usr/src/lib/libc/rpc/svc_run.c, around line 64:

void
svc_run()
{
#ifdef FD_SETSIZE
        fd_set readfds;
#else
      int readfds;
#endif /* def FD_SETSIZE */

        for (;;) {
#ifdef FD_SETSIZE
                readfds = svc_fdset;
#else
                readfds = svc_fds;
#endif /* def FD_SETSIZE */
                switch (select(_rpc_dtablesize(), &readfds, NULL, NULL,
                               (struct timeval *)0)) {
                case -1:
                        if (errno == EINTR) {
                                continue;
                        }
                        perror("svc_run: - select failed");
                        return;
                case 0:
                        continue;
                default:
                        svc_getreqset(&readfds);
                }
        }
}

I have grepped the entire -stable kernel source for ECHILD, and it is only
used in kern/kern_exit.c, in wait1().  So I have absolutely no idea
why select is returning ECHILD.  This could be a hardware problem.  Anyone?

Niall

-- 
Niall Smart.  Microsoft Suck.  See www.freebsd.org for details.
echo "#define if(x) if(!(x))" >> /usr/include/stdio.h

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199804132113.WAA07398>