This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[hurd,commited] hurd: Avoid local PLT in libpthread
- From: Samuel Thibault <samuel dot thibault at ens-lyon dot org>
- To: libc-alpha at sourceware dot org
- Cc: Samuel Thibault <samuel dot thibault at ens-lyon dot org>
- Date: Tue, 3 Apr 2018 02:57:15 +0200
- Subject: [hurd,commited] hurd: Avoid local PLT in libpthread
* htl/pt-exit.c: Include <pthreadP.h>.
(__pthread_exit): Call ___pthread_get_cleanup_stack instead of
__pthread_get_cleanup_stack.
---
ChangeLog | 6 ++++--
htl/pt-exit.c | 3 ++-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 0b54ed73b5..8f4aa359ef 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -249,8 +249,10 @@
(pthread_detach): New strong alias.
(__pthread_detach): Call __pthread_cond_broadcast instead of
pthread_cond_broadcast.
- * htl/pt-exit.c (__pthread_exit): Call __pthread_setcancelstate
- instead of pthread_setcancelstate.
+ * htl/pt-exit.c: Include <pthreadP.h>.
+ (__pthread_exit): Call __pthread_setcancelstate and
+ ___pthread_get_cleanup_stack instead of pthread_setcancelstate and
+ __pthread_get_cleanup_stack.
* htl/pt-testcancel.c: Include <pthreadP.h>.
(pthread_testcancel): Call __pthread_exit instead of pthread_exit.
* sysdeps/htl/pt-attr-getstack.c: Include <pthreadP.h>
diff --git a/htl/pt-exit.c b/htl/pt-exit.c
index 0815dbcd98..cb62f474fa 100644
--- a/htl/pt-exit.c
+++ b/htl/pt-exit.c
@@ -22,6 +22,7 @@
#include <stdlib.h>
#include <pt-internal.h>
+#include <pthreadP.h>
#include <atomic.h>
@@ -40,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);
--
2.16.2