[hurd,commited] hurd: Avoid local PLT in libpthread

Message ID 20180403005715.22031-1-samuel.thibault@ens-lyon.org
State New
Headers show
Series
  • [hurd,commited] hurd: Avoid local PLT in libpthread
Related show

Commit Message

Samuel Thibault April 3, 2018, 12:57 a.m.
* 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(-)

Patch

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);