Date: Thu, 06 Nov 2025 19:20:35 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 290844] timeout / reaper: Spurious SIGARLM Message-ID: <bug-290844-227@https.bugs.freebsd.org/bugzilla/>
index | next in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290844 Bug ID: 290844 Summary: timeout / reaper: Spurious SIGARLM Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: kern Assignee: bugs@FreeBSD.org Reporter: bdrewery@FreeBSD.org CC: kib@FreeBSD.org, markj@FreeBSD.org, pho@FreeBSD.org CURRENT 55c28005f544282b984ae0e15dacd0c108d8ab12 I believe this is a problem with the reaper and not timeout(1). shell read with timeout and SIGINFO trap. Expect it to get status 157 (SIGINFO) only. With timeout(1) it also gets a 142 SIGALRM which causes an early timeout. Expected: ``` sh -c 'pread() { while :; do read -t 50 n; ret=$?; echo $ret; case $ret in 142) exit 1; esac; done; }; trap "echo info" INFO; pread; echo done' # ^T load: 0.17 cmd: sh 4824 [select] 0.35r 0.00u 0.01s 0% 3296k mi_switch+0x172 sleepq_switch+0x109 sleepq_catch_signals+0x276 sleepq_timedwait_sig+0x12 _cv_timedwait_sig_sbt+0x187 kern_select+0xa93 sys_select+0x57 amd64_syscall+0x451 fast_syscall_common+0xf8 info 157 # SIGINFO ``` Actual: ``` timeout -v 100 sh -c 'pread() { while :; do read -t 50 n; ret=$?; echo $ret; case $ret in 142) exit 1; esac; done; }; trap "echo info" INFO; pread; echo done' # ^T load: 0.35 cmd: sh 5283 [select] 0.45r 0.00u 0.00s 0% 3288k mi_switch+0x172 sleepq_switch+0x109 sleepq_catch_signals+0x276 sleepq_timedwait_sig+0x12 _cv_timedwait_sig_sbt+0x187 kern_select+0xa93 sys_select+0x57 amd64_syscall+0x451 fast_syscall_common+0xf8 info 157 # SIGINFO timeout: received signal INFO(29) timeout: sending signal INFO(29) to command 'sh' timeout: signaled 1 processes timeout: sending signal CONT(19) to command 'sh' info 157 # SIGINFO 142 # SIGALRM ??? ``` Note timeout(1) forwards the SIGINFO so it is received twice. That's "fine". The SIGARLM isn't fine. -- You are receiving this mail because: You are the assignee for the bug.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-290844-227>
