浏览代码

nptl: timer_routines.c (timer_helper_thread):

    Use sigfillset.  Document that sigfillset does the right thing wrt
    to SIGSETXID.

    Sync with glibc

Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Austin Foxley 15 年之前
父节点
当前提交
e64b864d6d
共有 2 个文件被更改,包括 6 次插入8 次删除
  1. 4 1
      libpthread/nptl/ChangeLog
  2. 2 7
      libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c

+ 4 - 1
libpthread/nptl/ChangeLog

@@ -1,6 +1,8 @@
 2005-08-23  Ulrich Drepper  <drepper@redhat.com>
 
-	* sysdeps/unix/sysv/linux/timer_routines.c: Don't block SIGSETXID ever.
+	* sysdeps/unix/sysv/linux/timer_routines.c (timer_helper_thread):
+	Use __sigfillset.  Document that sigfillset does the right thing wrt
+	to SIGSETXID.
 
 2005-07-11  Jakub Jelinek  <jakub@redhat.com>
 
@@ -223,6 +225,7 @@
 
 2005-02-14  Alan Modra  <amodra@bigpond.net.au>
 
+	[BZ #721]
 	* sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Redefine to suit
 	gcc4.
 

+ 2 - 7
libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c

@@ -58,9 +58,6 @@ timer_helper_thread (void *arg)
   sigset_t ss;
   sigemptyset (&ss);
   __sigaddset (&ss, SIGTIMER);
-#ifdef SIGSETXID
-  __sigaddset (&ss, SIGSETXID);
-#endif
 
   /* Endless loop of waiting for signals.  The loop is only ended when
      the thread is canceled.  */
@@ -128,14 +125,12 @@ __start_helper_thread (void)
   /* Block all signals in the helper thread but SIGSETXID.  To do this
      thoroughly we temporarily have to block all signals here.  The
      helper can lose wakeups if SIGCANCEL is not blocked throughout,
-     but sigfillset omits it.  So, we add it back explicitly here.  */
+     but sigfillset omits it SIGSETXID.  So, we add it back 
+     explicitly here.  */
   sigset_t ss;
   sigset_t oss;
   sigfillset (&ss);
   __sigaddset (&ss, SIGCANCEL);
-#ifdef SIGSETXID
-  __sigdelset (&ss, SIGSETXID);
-#endif
   INTERNAL_SYSCALL_DECL (err);
   INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &ss, &oss, _NSIG / 8);