Date: Thu, 19 Feb 2004 09:17:18 +0800 From: David Xu <davidxu@freebsd.org> To: Daniel Eischen <eischen@vigrid.com> Cc: freebsd-threads@freebsd.org Subject: Re: More on MySQL -- Fatal trap 12 Message-ID: <40340E9E.3090302@freebsd.org> In-Reply-To: <Pine.GSO.4.10.10402181421150.15667-100000@pcnet5.pcnet.com> References: <Pine.GSO.4.10.10402181421150.15667-100000@pcnet5.pcnet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Daniel Eischen wrote: >On Tue, 17 Feb 2004, Daniel Eischen wrote: > > > >>On Tue, 17 Feb 2004, Daniel Eischen wrote: >> >> >>>On Tue, 17 Feb 2004, Kris Gale wrote: >>> >>> >>>>Does this look like a fixable problem with KSE >>>>to anyone on this list? >>>> >>>> >>>I would like to see how MySQL works when using process >>>scope threads. Do you know enough to hack it to do that? >>> >>> >>Alternatively, this patch to libpthread should force all >>threads to be process scope. >> >> > >That patch doesn't work. It's not as simple to force the >library to use scope process threads, since we make use >of a special thread to handle signals and it has to be >scope system. > I am running with following patch and 4BSD scheduler, it is working without deadlock. ;-) Index: thr_create.c =================================================================== RCS file: /home/ncvs/src/lib/libpthread/thread/thr_create.c,v retrieving revision 1.53 diff -u -r1.53 thr_create.c --- thr_create.c 8 Jan 2004 15:37:09 -0000 1.53 +++ thr_create.c 19 Feb 2004 01:13:11 -0000 @@ -142,6 +142,9 @@ } #ifdef SYSTEM_SCOPE_ONLY new_thread->attr.flags |= PTHREAD_SCOPE_SYSTEM; +#else + if (_thr_sig_daemon) + new_thread->attr.flags &= ~PTHREAD_SCOPE_SYSTEM; #endif if (create_stack(&new_thread->attr) != 0) { /* Insufficient memory to create a stack: */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40340E9E.3090302>