about summary refs log tree commit diff
path: root/linuxthreads/pthread.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-04-16 08:18:10 +0000
committerUlrich Drepper <drepper@redhat.com>2000-04-16 08:18:10 +0000
commite2947c429eaf51b7c0645e9484d70f141ba560d6 (patch)
tree239887216535bbf5c2c67faaf54fd10969b4c001 /linuxthreads/pthread.c
parentc269fdb42faa5bfe25453b03a2d74ebb68926d99 (diff)
downloadglibc-e2947c429eaf51b7c0645e9484d70f141ba560d6.tar.gz
glibc-e2947c429eaf51b7c0645e9484d70f141ba560d6.tar.xz
glibc-e2947c429eaf51b7c0645e9484d70f141ba560d6.zip
Update.
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.
Diffstat (limited to 'linuxthreads/pthread.c')
-rw-r--r--linuxthreads/pthread.c36
1 files changed, 2 insertions, 34 deletions
diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c
index ae747bc5ac..3375f7eaac 100644
--- a/linuxthreads/pthread.c
+++ b/linuxthreads/pthread.c
@@ -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.