Date: Mon, 7 Jun 2004 16:23:51 -0400 (EDT) From: Robert Watson <rwatson@freebsd.org> To: Arjan van Leeuwen <avleeuwen@piwebs.com> Cc: "David A. Benfell" <benfell@parts-unknown.org> Subject: Re: file descripter leak in current with Qmail? Message-ID: <Pine.NEB.3.96L.1040607162320.88690F-100000@fledge.watson.org> In-Reply-To: <200406072216.29044.avleeuwen@piwebs.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 7 Jun 2004, Arjan van Leeuwen wrote: > > It could be that this is related to the esd file descriptor leak problem > > also being reported. You might also try the attached patch. > > I get a panic (address not allocated) when using the patch. I can't > write down any useful details about it right now, because although the > server has only 3 users, they're very disconcerned when I disrupt their > internet traffic :). Just ran into that myself once the build finished -- looks like 'sa' isn't being initialized to NULL. I'll send a follow-up patch shortly. > > Best regards, > > Arjan > > > > > Robert N M Watson FreeBSD Core Team, TrustedBSD Projects > > robert@fledge.watson.org Senior Research Scientist, McAfee Research > > > > Index: uipc_syscalls.c > > =================================================================== > > RCS file: /data/ncvs/src/sys/kern/uipc_syscalls.c,v > > retrieving revision 1.187 > > diff -u -r1.187 uipc_syscalls.c > > --- uipc_syscalls.c 7 Jun 2004 09:59:50 -0000 1.187 > > +++ uipc_syscalls.c 7 Jun 2004 19:38:39 -0000 > > @@ -285,7 +285,7 @@ > > if ((head->so_state & SS_NBIO) && TAILQ_EMPTY(&head->so_comp)) { > > ACCEPT_UNLOCK(); > > error = EWOULDBLOCK; > > - goto done; > > + goto noconnection; > > } > > while (TAILQ_EMPTY(&head->so_comp) && head->so_error == 0) { > > if (head->so_state & SS_CANTRCVMORE) { > > @@ -296,14 +296,14 @@ > > "accept", 0); > > if (error) { > > ACCEPT_UNLOCK(); > > - goto done; > > + goto noconnection; > > } > > } > > if (head->so_error) { > > error = head->so_error; > > head->so_error = 0; > > ACCEPT_UNLOCK(); > > - goto done; > > + goto noconnection; > > } > > so = TAILQ_FIRST(&head->so_comp); > > KASSERT(!(so->so_qstate & SQ_INCOMP), ("accept1: so SQ_INCOMP")); > > > > > > > > !DSPAM:40c4c5b6283404763116770! >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1040607162320.88690F-100000>