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.
This commit is contained in:
Samuel Thibault 2018-04-03 02:56:35 +02:00
parent 82dbf555a4
commit fe9748cca3
2 changed files with 6 additions and 3 deletions

View File

@ -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>

View File

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