Revision 89b9ba66 cpus.c
b/cpus.c | ||
---|---|---|
396 | 396 |
sigaddset(&set, SIGUSR2); |
397 | 397 |
pthread_sigmask(SIG_UNBLOCK, &set, NULL); |
398 | 398 |
|
399 |
/* |
|
400 |
* SIG_IPI must be blocked in the main thread and must not be caught |
|
401 |
* by sigwait() in the signal thread. Otherwise, the cpu thread will |
|
402 |
* not catch it reliably. |
|
403 |
*/ |
|
404 |
sigemptyset(&set); |
|
405 |
sigaddset(&set, SIG_IPI); |
|
406 |
pthread_sigmask(SIG_BLOCK, &set, NULL); |
|
407 |
|
|
399 | 408 |
sigemptyset(&set); |
400 | 409 |
sigaddset(&set, SIGIO); |
401 | 410 |
sigaddset(&set, SIGALRM); |
402 |
sigaddset(&set, SIG_IPI); |
|
403 | 411 |
sigaddset(&set, SIGBUS); |
404 | 412 |
#else |
405 | 413 |
sigemptyset(&set); |
Also available in: Unified diff