Date: Wed, 3 Feb 1999 16:02:54 -0500 From: Barry Lustig <barry@lustig.com> To: freebsd-stable@FreeBSD.ORG Subject: ypserv sigsegv in most recent CVSup of 2.2.8 Message-ID: <19990203210255.12316.qmail@devious.lustig.com>
next in thread | raw e-mail | index | archive | help
Has anyone seen any problems with ypserv on the latest CVSup of 2.2.8? I have been seeing random sigsegv's showing up. I compiled up a debugging version of ypserv along with libc and found the following: (gdb) bt #0 svc_getreqset (readfds=0xefbfd964) at /usr/src/lib/libc/../libc/rpc/svc.c:432 #1 0x4234 in yp_svc_run () at /usr/src/usr.sbin/ypserv/yp_main.c:144 #2 0x480c in main (argc=1, argv=0xefbfd9dc) at /usr/src/usr.sbin/ypserv/yp_main.c:333 (gdb) p xprt $12 = (SVCXPRT *) 0x0 Here is the snippet of code in svc_getreqset where the problem is occuring: #ifdef FD_SETSIZE setsize = _rpc_dtablesize(); maskp = (u_long *)readfds->fds_bits; for (sock = 0; sock < setsize; sock += NFDBITS) { for (mask = *maskp++; (bit = ffs(mask)); mask ^= (1 << (bit - 1))) \ { /* sock has input waiting */ xprt = xports[sock + bit - 1]; #else for (sock = 0; readfds_local != 0; sock++, readfds_local >>= 1) { if ((readfds_local & 1) != 0) { /* sock has input waiting */ xprt = xports[sock]; #endif /* def FD_SETSIZE */ /* now receive msgs from xprtprt (support batch calls) */ do { =>if (SVC_RECV(xprt, &msg)) { /* now find the exported program and call it */ register struct svc_callout *s; enum auth_stat why; r.rq_xprt = xprt; r.rq_prog = msg.rm_call.cb_prog; r.rq_vers = msg.rm_call.cb_vers; r.rq_proc = msg.rm_call.cb_proc; r.rq_cred = msg.rm_call.cb_cred; To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990203210255.12316.qmail>