]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Sun, 16 Apr 2000 08:18:10 +0000 (08:18 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sun, 16 Apr 2000 08:18:10 +0000 (08:18 +0000)
2000-04-16  Ulrich Drepper  <drepper@redhat.com>

* pthread.c: Correct long-time braino.  We never set SA_SIGINFO and
therefore don't need the _rt versions of the signal handlers.

* internals.h: Declare __pthread_yield.

linuxthreads/ChangeLog
linuxthreads/internals.h
linuxthreads/pthread.c

index 9a1213b910a3f3eb64b67b08810edc0eb8d4b0c0..893528d95bb11810c4969f6888477c3645af6c70 100644 (file)
@@ -1,8 +1,14 @@
+2000-04-16  Ulrich Drepper  <drepper@redhat.com>
+
+       * pthread.c: Correct long-time braino.  We never set SA_SIGINFO and
+       therefore don't need the _rt versions of the signal handlers.
+
 2000-04-15  Ulrich Drepper  <drepper@redhat.com>
 
        * pthread.c (pthread_yield): New function.
        * sysdeps/pthread/pthread.h (pthread_yield): Add prototype.
        * Versions [libpthread] (GLIBC_2.2): Add pthread_yield.
+       * internals.h: Declare __pthread_yield.
 
        * pthread.c (pthread_initialize): Avoid a bit more code if
        realtime signals are known to exist.
index e6b58df3ca62d4432af44177d071aed9b40b0d74..c1f4081c7b6f86b0e38bef8b3e98f404b082c9d3 100644 (file)
@@ -439,6 +439,8 @@ int __pthread_timedsuspend_new(pthread_descr self, const struct timespec *abs);
 
 void __pthread_wait_for_restart_signal(pthread_descr self);
 
+int __pthread_yield (void);
+
 /* Global pointers to old or new suspend functions */
 
 extern void (*__pthread_restart)(pthread_descr);
index ae747bc5accf184e90c3c12a6fbc0a8e7f499c78..3375f7eaac5ed24074305f60208ffd5017a4cd8e 100644 (file)
@@ -197,11 +197,7 @@ static void pthread_handle_sigcancel(int sig);
 static void pthread_handle_sigrestart(int sig);
 #ifdef __i386__
 static void pthread_handle_sigrestart_nonrt(int sig, struct sigcontext ctx);
-static void pthread_handle_sigrestart_rt(int sig, struct siginfo *si,
-                                        struct ucontext *uc);
 static void pthread_handle_sigcancel_nonrt(int sig, struct sigcontext ctx);
-static void pthread_handle_sigcancel_rt(int sig, struct siginfo *si,
-                                        struct ucontext *uc);
 #endif
 static void pthread_handle_sigdebug(int sig);
 
@@ -369,12 +365,7 @@ static void pthread_initialize(void)
 #ifndef __i386__
   sa.sa_handler = pthread_handle_sigrestart;
 #else
-# if !__ASSUME_REALTIME_SIGNALS
-  if (__pthread_sig_restart < SIGRTMIN)
-    sa.sa_handler = (__sighandler_t) pthread_handle_sigrestart_nonrt;
-  else
-# endif
-    sa.sa_handler = (__sighandler_t) pthread_handle_sigrestart_rt;
+  sa.sa_handler = (__sighandler_t) pthread_handle_sigrestart_nonrt;
 #endif
   sigemptyset(&sa.sa_mask);
   sa.sa_flags = 0;
@@ -382,12 +373,7 @@ static void pthread_initialize(void)
 #ifndef __i386__
   sa.sa_handler = pthread_handle_sigcancel;
 #else
-# if !__ASSUME_REALTIME_SIGNALS
-  if (__pthread_sig_restart < SIGRTMIN)
-    sa.sa_handler = (__sighandler_t) pthread_handle_sigcancel_nonrt;
-  else
-# endif
-    sa.sa_handler = (__sighandler_t) pthread_handle_sigcancel_rt;
+  sa.sa_handler = (__sighandler_t) pthread_handle_sigcancel_nonrt;
 #endif
   sa.sa_flags = 0;
   __sigaction(__pthread_sig_cancel, &sa, NULL);
@@ -675,20 +661,11 @@ static void pthread_handle_sigrestart(int sig)
 }
 
 #ifdef __i386__
-# if !__ASSUME_REALTIME_SIGNALS
 static void pthread_handle_sigrestart_nonrt(int sig, struct sigcontext ctx)
 {
   asm volatile ("movw %w0,%%gs" : : "r" (ctx.gs));
   pthread_handle_sigrestart(sig);
 }
-# endif
-
-static void pthread_handle_sigrestart_rt(int sig, struct siginfo *si,
-                                        struct ucontext *uc)
-{
-  asm volatile ("movw %w0,%%gs" : : "r" (uc->uc_mcontext.gregs[REG_GS]));
-  pthread_handle_sigrestart(sig);
-}
 #endif
 
 /* The handler for the CANCEL signal checks for cancellation
@@ -726,20 +703,11 @@ static void pthread_handle_sigcancel(int sig)
 }
 
 #ifdef __i386__
-# if !__ASSUME_REALTIME_SIGNALS
 static void pthread_handle_sigcancel_nonrt(int sig, struct sigcontext ctx)
 {
   asm volatile ("movw %w0,%%gs" : : "r" (ctx.gs));
   pthread_handle_sigcancel(sig);
 }
-# endif
-
-static void pthread_handle_sigcancel_rt(int sig, struct siginfo *si,
-                                        struct ucontext *uc)
-{
-  asm volatile ("movw %w0,%%gs" : : "r" (uc->uc_mcontext.gregs[REG_GS]));
-  pthread_handle_sigcancel(sig);
-}
 #endif
 
 /* Handler for the DEBUG signal.