cvs commit: src/sys/kern kern_exit.c

Kris Kennaway kris at obsecurity.org
Sun Oct 22 02:07:19 UTC 2006


On Sat, Oct 21, 2006 at 05:14:05PM -0700, Don Lewis wrote:
> On 21 Oct, David Xu wrote:
> > davidxu     2006-10-21 23:59:15 UTC
> > 
> >   FreeBSD src repository
> > 
> >   Modified files:
> >     sys/kern             kern_exit.c 
> >   Log:
> >   Since revision 1.333 of kern_sig.c no longer uses P_WEXIT, the change
> >   opened a race window which can cause memory leak in signal queue.
> >   Here we free memory for signal queue when process state is set to
> >   PRS_ZOMBIE.
> >   
> >   Revision  Changes    Path
> >   1.291     +8 -2      src/sys/kern/kern_exit.c
> 
> I wonder if the earlier change is what broke portupgrade after I
> upgraded from an August 31st version of current to yesterday's version.
> The symptoms were random processes dying from SIGHUP.  It was easy to
> reproduce by just going to a port directory and running
> 	script foo make clean
> a few times.  I'd randomly see make complain about a non-zero exit
> status from uname or some other sub-process.  I tracked the problem back
> to the SIGHUP bit being set in td2's sigqueue in fork1().   As a
> workaround, I added a call to sigqueue_init() where td2 gets bzero'ed.

Something is making java segfault reproducibly on a recent kernel too.
I'll test to see whether this fixes it.

Kris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-all/attachments/20061022/a2e8c8d9/attachment.pgp


More information about the cvs-all mailing list