]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 3 Jul 2003 07:37:59 +0000 (07:37 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 3 Jul 2003 07:37:59 +0000 (07:37 +0000)
2003-07-03  Ulrich Drepper  <drepper@redhat.com>

* sysdeps/pthread/librt-cancellation.c (__pthread_unwind): Remove
definition.
* pthreadP.h (__pthread_unwind): Add hidden_proto if used in
libpthread compilation.
* unwind.c (__pthread_unwind): Add hidden_def.
* Versions (libpthread) [GLIBC_PRIVATE]: Add __pthread_unwind.

nptl/ChangeLog
nptl/Versions
nptl/pthreadP.h
nptl/sysdeps/pthread/librt-cancellation.c
nptl/unwind.c

index 82034f8d5dc7547ae33ee4acc50f1fe9b6937df2..0b016b095f3b20243ec86029d1994d58c7736414 100644 (file)
@@ -1,3 +1,12 @@
+2003-07-03  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/pthread/librt-cancellation.c (__pthread_unwind): Remove
+       definition.
+       * pthreadP.h (__pthread_unwind): Add hidden_proto if used in
+       libpthread compilation.
+       * unwind.c (__pthread_unwind): Add hidden_def.
+       * Versions (libpthread) [GLIBC_PRIVATE]: Add __pthread_unwind.
+
 2003-07-01  Ulrich Drepper  <drepper@redhat.com>
 
        * libc-cancellation.c (__libc_cleanup_routine): Define.
index a8fa3c85e8c15b12aa9cf138e43596dab3f0f26a..0f98663d726cf646259c34ce714faf42adf57c14 100644 (file)
@@ -225,5 +225,6 @@ libpthread {
   GLIBC_PRIVATE {
     __pthread_initialize_minimal; __pthread_cleanup_upto;
     __pthread_clock_gettime; __pthread_clock_settime;
+    __pthread_unwind;
   }
 }
index 1c523a873ddbee221afef76b01b2c3bfc66b0092..e33d8281177ab08d0c2719ab8139dc0a495ae045 100644 (file)
@@ -114,6 +114,10 @@ extern void __pthread_unwind (__pthread_unwind_buf_t *__buf)
      weak_function
 #endif
      ;
+#if defined NOT_IN_libc && defined IS_IN_libpthread
+hidden_proto (__pthread_unwind)
+#endif
+
 
 /* Called when a thread reacts on a cancellation request.  */
 static inline void
index b5a118f91201bcbead1fd65c864e2ae58b541e09..ae9dd2ad97ba250fdd8ac55cf10fd42438171d24 100644 (file)
 
 
 #ifdef IS_IN_librt
-
-/* XXX Hack ahead.  In librt we currently do not have access to a
-   function equivalent to __pthread_unwind.  Therefore we just raise a
-   signal.  */
-void
-attribute_hidden
-__pthread_unwind (__pthread_unwind_buf_t *buf)
-{
-  INTERNAL_SYSCALL_DECL (err);
-  while (1)
-    INTERNAL_SYSCALL (tkill, err, 2, THREAD_GETMEM (THREAD_SELF, tid),
-                     SIGCANCEL);
-}
-
-
 /* The next two functions are similar to pthread_setcanceltype() but
    more specialized for the use in the cancelable functions like write().
    They do not need to check parameters etc.  */
index a7855c386c50fa8305d7794fd1b8faa4e84779e4..e51fd295b5c8de7611f993932338fdfd167b28bd 100644 (file)
@@ -111,6 +111,7 @@ __pthread_unwind (__pthread_unwind_buf_t *buf)
   /* We better do not get here.  */
   abort ();
 }
+hidden_def (__pthread_unwind)
 
 
 void