Date: Mon, 3 Dec 2007 08:47:51 -0500 (EST) From: Daniel Eischen <deischen@freebsd.org> To: "Arno J. Klaassen" <arno@heho.snv.jussieu.fr> Cc: java@freebsd.org Subject: Re: cvs commit: src/lib/libkse/thread thr_kern.c Message-ID: <Pine.GSO.4.64.0712030846170.19267@sea.ntplx.net> In-Reply-To: <wphcj1dmvz.fsf@heho.snv.jussieu.fr> References: <200711301716.lAUHGEV1064334@repoman.freebsd.org> <wpprxrto0s.fsf@heho.snv.jussieu.fr> <Pine.GSO.4.64.0711301659060.5465@sea.ntplx.net> <wpwsrz9uyr.fsf@heho.snv.jussieu.fr> <Pine.GSO.4.64.0711301849310.6581@sea.ntplx.net> <wphcj2plsx.fsf@heho.snv.jussieu.fr> <Pine.GSO.4.64.0712011824130.11446@sea.ntplx.net> <wphcj1dmvz.fsf@heho.snv.jussieu.fr>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 2 Dec 2007, Arno J. Klaassen wrote: > > Daniel Eischen <deischen@freebsd.org> writes: > >> You could of course try this hack to work-around the problem: >> >> Index: thr_kern.c >> =================================================================== >> RCS file: /home/ncvs/src/lib/libkse/thread/thr_kern.c,v >> retrieving revision 1.127 >> diff -u -r1.127 thr_kern.c >> --- thr_kern.c 30 Nov 2007 17:16:14 -0000 1.127 >> +++ thr_kern.c 1 Dec 2007 23:23:42 -0000 >> @@ -361,6 +361,13 @@ >> curthread->kse->k_kcb->kcb_kmbx.km_curthread = NULL; >> curthread->attr.flags |= PTHREAD_SCOPE_SYSTEM; >> >> + /* >> + * This shouldn't be necessary. It sometimes gets corrupted >> + * after a fork() in SMP. >> + */ >> + _kcb_set(curthread->kse->k_kcb); >> + _tcb_set(curthread->kse->k_kcb, curthread->tcb); >> + >> /* After a fork(), there child should have no pending signals. */ >> sigemptyset(&curthread->sigpend); > > Yes, this works. Thanx! > Is this safe to apply to releng_6 as well? Yes, it should also work on 6.x. -- DE
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.64.0712030846170.19267>