* sysdeps/unix/sysv/linux/timer_routines.c (timer_helper_thread):

Use __sigfillset.  Document that sigfillset does the right thing wrt
	to SIGSETXID.
This commit is contained in:
Ulrich Drepper 2005-08-24 01:12:37 +00:00
parent 2c210d1eb8
commit 8558d715d0
2 changed files with 5 additions and 8 deletions

View file

@ -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>

View file

@ -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 SIGCANCEL 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);