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: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected], [email protected]

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.

Reply via email to