diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2018-06-16 10:52:04 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2018-06-16 10:52:04 +0200 |
commit | f96a85e0fe83abdc30c73e6f01b995baf733e97b (patch) | |
tree | 20ee97cbd3a7d1f5b9af63e9e037eba19737776c /htl | |
parent | hurd: Whitelist PLT refs which are difficult to avoid (diff) | |
download | glibc-f96a85e0fe83abdc30c73e6f01b995baf733e97b.tar.gz glibc-f96a85e0fe83abdc30c73e6f01b995baf733e97b.tar.bz2 glibc-f96a85e0fe83abdc30c73e6f01b995baf733e97b.zip |
hurd: Fix missing __pthread_get_cleanup_stack symbol
Rework 57e1651557e8 ("hurd: Avoid PLT ref for __pthread_get_cleanup_stack")
to keep the __pthread_get_cleanup_stack symbol.
* htl/pt-cleanup.c (__pthread_get_cleanup_stack): Rename to
___pthread_get_cleanup_stack.
(__pthread_get_cleanup_stack): Remove hidden def, add alias.
* htl/pt-exit.c (__pthread_exit): Use ___pthread_get_cleanup_stack
instead of __pthread_get_cleanup_stack.
* sysdeps/htl/pthread-functions.h [libpthread]
(__pthread_get_cleanup_stack): Remove hidden proto.
* sysdeps/htl/pthreadP.h (___pthread_get_cleanup_stack): Add
prototype.
* sysdeps/htl/pthreadP.h (___pthread_get_cleanup_stack): Add hidden
attribute.
* htl/pt-join.c (__pthread_get_cleanup_stack): Define to
___pthread_get_cleanup_stack.
Diffstat (limited to 'htl')
-rw-r--r-- | htl/pt-cleanup.c | 4 | ||||
-rw-r--r-- | htl/pt-exit.c | 2 | ||||
-rw-r--r-- | htl/pt-join.c | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/htl/pt-cleanup.c b/htl/pt-cleanup.c index b4a9834dc1..1b860c7bf7 100644 --- a/htl/pt-cleanup.c +++ b/htl/pt-cleanup.c @@ -21,8 +21,8 @@ #include <pt-internal.h> struct __pthread_cancelation_handler ** -__pthread_get_cleanup_stack (void) +___pthread_get_cleanup_stack (void) { return &_pthread_self ()->cancelation_handlers; } -libc_hidden_def (__pthread_get_cleanup_stack) +strong_alias (___pthread_get_cleanup_stack, __pthread_get_cleanup_stack) diff --git a/htl/pt-exit.c b/htl/pt-exit.c index 823e09e26e..cb62f474fa 100644 --- a/htl/pt-exit.c +++ b/htl/pt-exit.c @@ -41,7 +41,7 @@ __pthread_exit (void *status) disabled. */ __pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate); - for (handlers = __pthread_get_cleanup_stack (); + for (handlers = ___pthread_get_cleanup_stack (); *handlers != NULL; *handlers = (*handlers)->__next) (*handlers)->__handler ((*handlers)->__arg); diff --git a/htl/pt-join.c b/htl/pt-join.c index 061f421eae..befa0da5bc 100644 --- a/htl/pt-join.c +++ b/htl/pt-join.c @@ -22,6 +22,8 @@ #include <pt-internal.h> +#define __pthread_get_cleanup_stack ___pthread_get_cleanup_stack + /* Make calling thread wait for termination of thread THREAD. Return the exit status of the thread in *STATUS. */ int |