/[glibc-bsd]
ViewVC logotype

Revision 4187


Jump to revision: Previous Next
Author: rmh
Date: Tue Apr 10 10:13:35 2012 UTC (2 years, 3 months ago)
Changed paths: 2
Log Message:
Revert commit 4170, based on advice from Petr Salinger:

While in general it is a correct change, the situation inside library implementing libc/libpthread/librt is slightly different.

linuxthreads/signals.c:

int pthread_sigmask(int how, const sigset_t * newmask, sigset_t * oldmask)

   /* Don't allow __pthread_sig_restart to be unmasked.
      Don't allow __pthread_sig_cancel to be masked. */


At least inside __start_helper_thread __sigprocmask() should be used, othewise:

kfreebsd/linuxthreads/timer_routines.c:

 /* 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 SIGSETXID.  So, we add SIGCANCEL back
    explicitly here.  */


Changed paths:

Path Details
Directorytrunk/glibc-ports/kfreebsd/linuxthreads/timer_routines.c modified , text changed
Directorytrunk/glibc-ports/kfreebsd/nptl/timer_routines.c modified , text changed

  ViewVC Help
Powered by ViewVC 1.1.5