aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-08-02 03:37:41 +0000
committerRoland McGrath <roland@gnu.org>2002-08-02 03:37:41 +0000
commitfc10bc8d325d1c0e08ccadaa650686d735b70d3e (patch)
tree37de86ef53188b292ef0a2a20521558aa2e16ee5 /linuxthreads
parentc2afe833521105e05298500ba5d4676d6c833242 (diff)
downloadglibc-fc10bc8d325d1c0e08ccadaa650686d735b70d3e.zip
glibc-fc10bc8d325d1c0e08ccadaa650686d735b70d3e.tar.gz
glibc-fc10bc8d325d1c0e08ccadaa650686d735b70d3e.tar.bz2
* resolv/resolv.h (_res): Define macro unconditionally.
[! _LIBC_REENTRANT] (_res): Move this conditional decl to ... * include/resolv.h: ... here. [USE_TLS && HAVE___THREAD] (_res): #undef it and declare as a __thread variable. * resolv/res_libc.c [USE_TLS && HAVE___THREAD] (_res): Define it as a __thread variable instead of a global. * resolv/res_data.c [_LIBC]: Don't #undef _res. * include/errno.h: Include <tls.h> to make sure USE_TLS defined by the time we test it. * intl/loadmsgcat.c [__GNUC__]: #undef alloca before defining it. * malloc/malloc.c [_LIBC]: Include <string.h> instead of using local decls of memset and memcpy. * sysdeps/generic/sysdep.h (END): Conditionalize on [__ASSEMBLER__]. * sysdeps/unix/sysv/linux/i386/sysdep.h (L): Likewise. * elf/dl-load.c (_dl_map_object_from_fd): Comment fix. * sysdeps/generic/bits/libc-tsd.h [USE_TLS && HAVE___THREAD] (__libc_tsd_define): Define using __thread. * sunrpc/rpc_thread.c: Use __libc_tsd_define. (__rpc_thread_variables): Use __libc_tsd_get. (__rpc_thread_destroy): Use __libc_tsd_get instead of calling __rpc_thread_variables, which might allocate what we're about to free. * inet/herrno.c [USE_TLS && HAVE___THREAD] (h_errno): Define as a thread-local variable. * resolv/netdb.h (h_errno): Define macro unconditionally. [_LIBC] (__set_h_errno): Macro moved to ... * include/netdb.h: ... here. [USE_TLS && HAVE___THREAD] (h_errno): Declare __thread variable. [USE_TLS && HAVE___THREAD] (__set_h_errno): Define using that. [! _LIBC_REENTRANT]: #undef h_errno here. * include/errno.h: Protect from multiple inclusion. * misc/sys/select.h (__NFDBITS, __FDELT, __FDMASK): #undef these before defining them, since Linux's <linux/posix_types.h> might have defined them. 2002-08-01 Roland McGrath <roland@redhat.com> 2002-07-31 Roland McGrath <roland@redhat.com> 2002-07-31 Roland McGrath <roland@redhat.com>
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog1
-rw-r--r--linuxthreads/no-tsd.c6
2 files changed, 6 insertions, 1 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 30917d3..4b86627 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -17,6 +17,7 @@
* manager.c (pthread_handle_create): Likewise.
* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
+ * no-tsd.c: Conditionalize contents on [!(USE_TLS && HAVE___THREAD)].
* errno.c [USE_TLS && HAVE___THREAD]
(__h_errno_location, __res_state): Don't define these at all.
diff --git a/linuxthreads/no-tsd.c b/linuxthreads/no-tsd.c
index 84abb6f..7b5f7ef 100644
--- a/linuxthreads/no-tsd.c
+++ b/linuxthreads/no-tsd.c
@@ -1,5 +1,5 @@
/* libc-internal interface for thread-specific data.
- Copyright (C) 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1998,99,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -20,6 +20,8 @@
#include <sys/cdefs.h> /* for __const */
#include <bits/libc-tsd.h>
+#if !(USE_TLS && HAVE___THREAD)
+
/* This file provides uinitialized (common) definitions for the
hooks used internally by libc to access thread-specific data.
@@ -32,3 +34,5 @@
void *(*__libc_internal_tsd_get) (enum __libc_tsd_key_t);
int (*__libc_internal_tsd_set) (enum __libc_tsd_key_t,
__const void *);
+
+#endif /* !(USE_TLS && HAVE___THREAD) */