diff options
author | Roland McGrath <roland@gnu.org> | 2007-06-26 06:47:07 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2007-06-26 06:47:07 +0000 |
commit | 0ecf9c1064e40f02d4b4e693e676c0f113372d57 (patch) | |
tree | 8a24f656356b8a207f87aab4674023ea37984134 /nptl | |
parent | a28876d013accb785592925a13160b6ef7d4fa60 (diff) | |
download | glibc-0ecf9c1064e40f02d4b4e693e676c0f113372d57.zip glibc-0ecf9c1064e40f02d4b4e693e676c0f113372d57.tar.gz glibc-0ecf9c1064e40f02d4b4e693e676c0f113372d57.tar.bz2 |
2007-05-16 Roland McGrath <roland@redhat.com>
* init.c (__nptl_initial_report_events): New variable.
(__pthread_initialize_minimal_internal): Initialize pd->report_events
to that.
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/init.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/nptl/init.c b/nptl/init.c index be8359e..a1aec6b 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 |