about summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-02-22 00:55:36 +0000
committerRoland McGrath <roland@gnu.org>2003-02-22 00:55:36 +0000
commite8783fd53d5d673eab4500d2cac82601f2f802e0 (patch)
tree153d45b1e7c9b279d5304b4cc88e495aa9341363 /linuxthreads
parent113d33e776f6ab899016aa2220b8a43a271f5e7f (diff)
downloadglibc-e8783fd53d5d673eab4500d2cac82601f2f802e0.tar.gz
glibc-e8783fd53d5d673eab4500d2cac82601f2f802e0.tar.xz
glibc-e8783fd53d5d673eab4500d2cac82601f2f802e0.zip
* malloc/Versions (GLIBC_PRIVATE): Add __libc_thread_freeres.
	* malloc/thread-freeres.c: New file.
	* malloc/Makefile (aux): Add it.
	* sunrpc/Versions (GLIBC_PRIVATE): Removed.
	* sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
	"__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.

	* sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
	* sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.

2003-02-21  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.

	* iconvdata/Makefile (tests): Add bug-iconv3 only if
	[$(have-thread-library) = yes].
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog5
-rw-r--r--linuxthreads/cancel.c10
2 files changed, 7 insertions, 8 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index bcd5ea1b00..adfaaa8f0e 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,8 @@
+2003-02-21  Roland McGrath  <roland@redhat.com>
+
+	* cancel.c (__pthread_perform_cleanup): Call __libc_thread_freeres
+	instead of __rpc_thread_destroy.
+
 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
 
 	* sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S (__vfork): Call
diff --git a/linuxthreads/cancel.c b/linuxthreads/cancel.c
index 838f55d8b2..d8053ca899 100644
--- a/linuxthreads/cancel.c
+++ b/linuxthreads/cancel.c
@@ -15,7 +15,7 @@
 /* Thread cancellation */
 
 #include <errno.h>
-#include <rpc/rpc.h>
+#include <libc-internal.h>
 #include "pthread.h"
 #include "internals.h"
 #include "spinlock.h"
@@ -230,11 +230,5 @@ void __pthread_perform_cleanup(char *currentframe)
     }
 
   /* And the TSD which needs special help.  */
-#if !(USE_TLS && HAVE___THREAD)
-  if (THREAD_GETMEM(self, p_libc_specific[_LIBC_TSD_KEY_RPC_VARS]) != NULL)
-    __rpc_thread_destroy ();
-#else
-  if (__libc_tsd_get (RPC_VARS) != NULL)
-    __rpc_thread_destroy ();
-#endif
+  __libc_thread_freeres ();
 }