From: Roland McGrath Date: Tue, 26 Jun 2007 06:47:07 +0000 (+0000) Subject: 2007-05-16 Roland McGrath X-Git-Tag: cvs/glibc-2_6_1~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0ecf9c1064e40f02d4b4e693e676c0f113372d57;p=thirdparty%2Fglibc.git 2007-05-16 Roland McGrath * init.c (__nptl_initial_report_events): New variable. (__pthread_initialize_minimal_internal): Initialize pd->report_events to that. --- diff --git a/nptl/init.c b/nptl/init.c index be8359ea21e..a1aec6b8f7e 100644 --- a/nptl/init.c +++ b/nptl/init.c @@ -234,6 +234,9 @@ sighandler_setxid (int sig, siginfo_t *si, void *ctx) extern void **__libc_dl_error_tsd (void) __attribute__ ((const)); +/* This can be set by the debugger before initialization is complete. */ +static bool __nptl_initial_report_events; + void __pthread_initialize_minimal_internal (void) { @@ -297,6 +300,9 @@ __pthread_initialize_minimal_internal (void) INIT_LIST_HEAD (&__stack_user); list_add (&pd->list, &__stack_user); + /* Before initializing __stack_user, the debugger could not find us and + had to set __nptl_initial_report_events. Propagate its setting. */ + THREAD_SETMEM (pd, report_events, __nptl_initial_report_events); /* Install the cancellation signal handler. If for some reason we cannot install the handler we do not abort. Maybe we should, but