[DragonFlyBSD - Bug #3445] timeout(1) fails on DragonFly: sigaction(32): Invalid argument

sigttou bugtracker-admin at leaf.dragonflybsd.org
Sat Oct 10 20:54:17 PDT 2026


Issue #3445 has been updated by sigttou.

File 0001-timeout-skip-sigthr-warn-v2.patch added

updated after alignment with @aly on IRC.

----------------------------------------
Bug #3445: timeout(1) fails on DragonFly: sigaction(32): Invalid argument
http://bugs.dragonflybsd.org/issues/3445#change-14829

* Author: sigttou
* Status: New
* Priority: Normal
* Category: Userland
* Target version: 6.6
* Start date: 2026-10-11
----------------------------------------
@usr.bin/timeout/timeout.c@ installs a signal handler on every signal so it can
forward signals to its child.  The loop skips several, but not signal 32.

Signal 32 is @SIGTHR@, reserved by the thread library for thread cancellation.
@sigaction()@ rejects it with @EINVAL@, so @timeout@ exits immediately:

    timeout: sigaction(32): Invalid argument

The command is never run: @timeout(1)@ is unusable.

This is a base regression.  The 6.4 @timeout@ used a fixed signal list that
never touched 32, and the post-6.4 libc thread merge moved the @SIGCANCEL@ check
into @libc.so.8@ for every process.

Skip @SIGTHR@ in the handler-install loop.  The @#ifdef@ keeps the file
portable to systems that do not define the name.


---Files--------------------------------
0001-timeout-skip-sigthr.patch (1.15 KB)
0001-timeout-skip-sigthr-warn-v2.patch (1.25 KB)


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account


More information about the Bugs mailing list