[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

glibc-bsd questions



Hi,

I've been trying to look into the ruby1.9.1 bug and have some beginner
questions about our libc.


Do we define SIGCANCEL as __SIGRTMIN?

If so, having redefined __SIGRTMIN from 32 to the awkward number 65,
does that not cause problems when trying to mask it?


From
http://anonscm.debian.org/viewvc/glibc-bsd/trunk/glibc-ports/kfreebsd/linuxthreads/timer_routines.c?revision=4187&view=markup
:

"At least inside __start_helper_thread __sigprocmask() should be used"

Does it matter that sigprocmask actually got used and not __sigprocmask?
 Maybe they are the same thing.  But I suspect there is/was an
implementation of that function which refuses to block SIGCANCEL (same
as pthread_sigmask), and another one that does.

> --- trunk/glibc-ports/kfreebsd/linuxthreads/timer_routines.c	2012/04/09 22:58:58	4186
> +++ trunk/glibc-ports/kfreebsd/linuxthreads/timer_routines.c	2012/04/10 10:13:35	4187
> @@ -186,7 +186,7 @@
>    sigset_t oss;
>    sigfillset (&ss);
>    __sigaddset (&ss, SIGCANCEL);
> -  pthread_sigmask (SIG_SETMASK, &ss, &oss);
> +  sigprocmask (SIG_SETMASK, &ss, &oss);
>  
>    sem_init (&__helper_tid_semaphore, 0, 0);
>  

Regards,
-- 
Steven Chamberlain
steven@pyro.eu.org


Reply to: