summaryrefslogtreecommitdiff
path: root/libpthread/linuxthreads/manager.c
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2011-05-03 23:04:08 +0200
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2012-06-15 14:00:43 +0200
commita3516fe1a43318dca4e14178142174aa0eed6c30 (patch)
treec8dabe53b20a79c2ab0408cbe0bfde6d142e4786 /libpthread/linuxthreads/manager.c
parent4b06ff8e51f24313b8a24a2f9e2005ef13848964 (diff)
linuxthreads: use __UCLIBC_HAS_TLS__ consistently
replace USE_TLS, HAVE___THREAD and USE___THREAD with __UCLIBC_HAS_TLS__ Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Diffstat (limited to 'libpthread/linuxthreads/manager.c')
-rw-r--r--libpthread/linuxthreads/manager.c44
1 files changed, 22 insertions, 22 deletions
diff --git a/libpthread/linuxthreads/manager.c b/libpthread/linuxthreads/manager.c
index b1482f162..3c5bee876 100644
--- a/libpthread/linuxthreads/manager.c
+++ b/libpthread/linuxthreads/manager.c
@@ -126,7 +126,7 @@ __pthread_manager(void *arg)
#ifdef INIT_THREAD_SELF
INIT_THREAD_SELF(self, 1);
#endif
-#if !(USE_TLS && HAVE___THREAD)
+#ifndef __UCLIBC_HAS_TLS__
/* Set the error variable. */
self->p_errnop = &self->p_errno;
self->p_h_errnop = &self->p_h_errno;
@@ -289,7 +289,7 @@ pthread_start_thread(void *arg)
__sched_setscheduler(THREAD_GETMEM(self, p_pid),
SCHED_OTHER, &default_params);
}
-#if !(USE_TLS && HAVE___THREAD)
+#ifndef __UCLIBC_HAS_TLS__
/* Initialize thread-locale current locale to point to the global one.
With __thread support, the variable's initializer takes care of this. */
__uselocale (LC_GLOBAL_LOCALE);
@@ -333,7 +333,7 @@ pthread_start_thread_event(void *arg)
pthread_start_thread (arg);
}
-#if defined USE_TLS && !FLOATING_STACKS
+#if defined __UCLIBC_HAS_TLS__ && !FLOATING_STACKS
# error "TLS can only work with floating stacks"
#endif
@@ -351,7 +351,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
char * guardaddr;
size_t stacksize, guardsize;
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
/* TLS cannot work with fixed thread descriptor addresses. */
assert (default_new_thread == NULL);
#endif
@@ -360,7 +360,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
{
#ifdef _STACK_GROWS_UP
/* The user provided a stack. */
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
/* This value is not needed. */
new_thread = (pthread_descr) attr->__stackaddr;
new_thread_bottom = (char *) new_thread;
@@ -381,7 +381,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
addresses, stackaddr would be the lowest address in the stack
segment, so that it is consistently close to the initial sp
value. */
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
new_thread = (pthread_descr) attr->__stackaddr;
# else
new_thread =
@@ -394,7 +394,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
#ifndef THREAD_SELF
__pthread_nonstandard_stacks = 1;
#endif
-#ifndef USE_TLS
+#ifndef __UCLIBC_HAS_TLS__
/* Clear the thread data structure. */
memset (new_thread, '\0', sizeof (*new_thread));
#endif
@@ -438,7 +438,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
mprotect (guardaddr, guardsize, PROT_NONE);
new_thread_bottom = (char *) map_addr;
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
new_thread = ((pthread_descr) (new_thread_bottom + stacksize
+ guardsize));
# else
@@ -451,7 +451,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
mprotect (guardaddr, guardsize, PROT_NONE);
new_thread_bottom = (char *) map_addr + guardsize;
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
new_thread = ((pthread_descr) (new_thread_bottom + stacksize));
# else
new_thread = ((pthread_descr) (new_thread_bottom + stacksize)) - 1;
@@ -462,7 +462,7 @@ static int pthread_allocate_stack(const pthread_attr_t *attr,
mprotect (guardaddr, guardsize, PROT_NONE);
new_thread = (pthread_descr) map_addr;
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
new_thread_bottom = (char *) new_thread;
# else
new_thread_bottom = (char *) (new_thread + 1);
@@ -597,7 +597,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
int pagesize = __getpagesize();
int saved_errno = 0;
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
new_thread = _dl_allocate_tls (NULL);
if (new_thread == NULL)
return EAGAIN;
@@ -621,7 +621,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
{
if (sseg >= PTHREAD_THREADS_MAX)
{
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
# if defined(TLS_DTV_AT_TP)
new_thread = (pthread_descr) ((char *) new_thread + TLS_PRE_TCB_SIZE);
# endif
@@ -635,7 +635,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
pagesize, &stack_addr, &new_thread_bottom,
&guardaddr, &guardsize, &stksize) == 0)
{
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
new_thread->p_stackaddr = stack_addr;
#else
new_thread = (pthread_descr) stack_addr;
@@ -657,18 +657,18 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
new_thread_id = sseg + pthread_threads_counter;
/* Initialize the thread descriptor. Elements which have to be
initialized to zero already have this value. */
-#if !defined USE_TLS || !TLS_DTV_AT_TP
+#if !defined __UCLIBC_HAS_TLS__ || !TLS_DTV_AT_TP
new_thread->p_header.data.tcb = new_thread;
new_thread->p_header.data.self = new_thread;
#endif
-#if TLS_MULTIPLE_THREADS_IN_TCB || !defined USE_TLS || !TLS_DTV_AT_TP
+#if TLS_MULTIPLE_THREADS_IN_TCB || !defined __UCLIBC_HAS_TLS__ || !TLS_DTV_AT_TP
new_thread->p_multiple_threads = 1;
#endif
new_thread->p_tid = new_thread_id;
new_thread->p_lock = &(__pthread_handles[sseg].h_lock);
new_thread->p_cancelstate = PTHREAD_CANCEL_ENABLE;
new_thread->p_canceltype = PTHREAD_CANCEL_DEFERRED;
-#if !(USE_TLS && HAVE___THREAD)
+#ifndef __UCLIBC_HAS_TLS__
new_thread->p_errnop = &new_thread->p_errno;
new_thread->p_h_errnop = &new_thread->p_h_errno;
new_thread->p_resp = &new_thread->p_res;
@@ -807,7 +807,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
munmap((caddr_t)new_thread_bottom,
2 * stacksize + new_thread->p_guardsize);
#elif defined _STACK_GROWS_UP
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
size_t stacksize = guardaddr - stack_addr;
munmap(stack_addr, stacksize + guardsize);
# else
@@ -815,7 +815,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
munmap(new_thread, stacksize + guardsize);
# endif
#else
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
size_t stacksize = stack_addr - new_thread_bottom;
# else
size_t stacksize = (char *)(new_thread+1) - new_thread_bottom;
@@ -823,7 +823,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr,
munmap(new_thread_bottom - guardsize, guardsize + stacksize);
#endif
}
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
# if defined(TLS_DTV_AT_TP)
new_thread = (pthread_descr) ((char *) new_thread + TLS_PRE_TCB_SIZE);
# endif
@@ -890,7 +890,7 @@ static void pthread_free(pthread_descr th)
/* Free the stack and thread descriptor area */
char *guardaddr = th->p_guardaddr;
#ifdef _STACK_GROWS_UP
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
size_t stacksize = guardaddr - th->p_stackaddr;
guardaddr = th->p_stackaddr;
# else
@@ -900,7 +900,7 @@ static void pthread_free(pthread_descr th)
#else
/* Guardaddr is always set, even if guardsize is 0. This allows
us to compute everything else. */
-# ifdef USE_TLS
+# ifdef __UCLIBC_HAS_TLS__
size_t stacksize = th->p_stackaddr - guardaddr - guardsize;
# else
size_t stacksize = (char *)(th+1) - guardaddr - guardsize;
@@ -916,7 +916,7 @@ static void pthread_free(pthread_descr th)
}
-#ifdef USE_TLS
+#ifdef __UCLIBC_HAS_TLS__
# if defined(TLS_DTV_AT_TP)
th = (pthread_descr) ((char *) th + TLS_PRE_TCB_SIZE);
# endif