diff options
author | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-12-02 22:10:04 -0700 |
---|---|---|
committer | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-12-08 08:27:23 -0700 |
commit | 92c0baf72135a3ad3c396d0897e8741fc552e490 (patch) | |
tree | 2729d2c5fc52551e1bf5fc867c856d3edb7327c0 /libcr/coroutine.c | |
parent | 800b986aa729ef27e256184cc04060cf07830413 (diff) |
libcr: Pull out a _CR_SIG_SENTINEL
Diffstat (limited to 'libcr/coroutine.c')
-rw-r--r-- | libcr/coroutine.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libcr/coroutine.c b/libcr/coroutine.c index c6e3d4c..3435bbb 100644 --- a/libcr/coroutine.c +++ b/libcr/coroutine.c @@ -151,11 +151,13 @@ /* For a signal to be *in* the mask means that the signal is * *blocked*. */ + #define _CR_SIG_SENTINEL SIGHUP + bool cr_is_in_intrhandler(void) { sigset_t cur_mask; sigfillset(&cur_mask); sigprocmask(0, NULL, &cur_mask); - if (sigismember(&cur_mask, SIGHUP)) + if (sigismember(&cur_mask, _CR_SIG_SENTINEL)) /* Interrupts are disabled, so we cannot be in * an interrupt handler. */ return false; @@ -169,7 +171,7 @@ sigset_t cur_mask; sigfillset(&cur_mask); sigprocmask(0, NULL, &cur_mask); - return !sigismember(&cur_mask, SIGHUP); + return !sigismember(&cur_mask, _CR_SIG_SENTINEL); } static inline void cr_plat_wait_for_interrupt(void) { @@ -187,7 +189,7 @@ sigset_t all, old; sigfillset(&all); sigprocmask(SIG_SETMASK, &all, &old); - return !sigismember(&old, SIGHUP); + return !sigismember(&old, _CR_SIG_SENTINEL); } void _cr_plat_enable_interrupts(void) { assert(!cr_is_in_intrhandler()); |