$ ./demo; echo $? Testing traditional signals: wait for 14, ignore 12, catch 10: FAIL: 1 interrupt during wait [0] Interrupted system call; by caught signal 10 ok: successfully waited for signal 14 ok: caught signal 10 during wait, as expected Testing realtime signals: wait for 36, ignore 35, catch 34: FAIL: 1 interrupt during wait [0] Interrupted system call; by caught signal 34 ok: successfully waited for signal 36 ok: caught signal 34 during wait, as expected 1 $ strace -o linux-6.8.trace ./demo; echo $? Testing traditional signals: wait for 14, ignore 12, catch 10: FAIL: 2 interrupts during wait [0] Interrupted system call; by ignored signal [1] Interrupted system call; by caught signal 10 ok: successfully waited for signal 14 ok: caught signal 10 during wait, as expected Testing realtime signals: wait for 36, ignore 35, catch 34: FAIL: 2 interrupts during wait [0] Interrupted system call; by ignored signal [1] Interrupted system call; by caught signal 34 ok: successfully waited for signal 36 ok: caught signal 34 during wait, as expected 1