Messages in this thread | | | Date | Mon, 2 Feb 2009 18:39:15 -0800 | Subject | Re: main thread pthread_exit/sys_exit bug! | From | Kaz Kylheku <> |
| |
On Mon, Feb 2, 2009 at 12:39 PM, Kaz Kylheku <kkylheku@gmail.com> wrote: > On Mon, Feb 2, 2009 at 12:17 PM, Ulrich Drepper <drepper@redhat.com> wrote: >> The userlevel context of the >> thread is not usable anymore. It will have run all kinds of >> destructors. The current behavior is AFAIK that the main thread won't >> react to any signal anymore. That is absolutely required. > > Hey Ulrich, > > Thanks for articulating that requirement. I think it can be met by > extending the patch a little bit.
I've now done that.
The exiting thread leader, if there are still other threads alive, gets its own private signal handler array in which every action is set to SIG_IGN, using the ignore_signals function.
I experimented with blocking signals, but that approach breaks the test case of being able to attach GDB to the exiting thread.
As part of the patch, I found it convenient to extend the incomplete sys_unshare functionality w.r.t. signal handlers, rather than reinvent the wheel.
Cheers ...
http://sourceware.org/bugzilla/attachment.cgi?id=3702 http://sourceware.org/bugzilla/attachment.cgi?id=3705
| |