Package: runit-init Version: 2.1.2-61 Severity: important X-Debbugs-Cc: plore...@disroot.org
During testing of runit-2-1-2-61 the following problem was found: * boot and enter into emergency shell in stage 1 (this requires a modified stage 1) * send sigalrm to pid1 (this happened testing trying to synching services status with sv_trigger, which sends a sigarlm to pid1 to force a rescan of runsvdir * runit prints message: "WARNING, "signals only work in stage 2." several times instead of just one * close emergency shell and continue with boot process: as soon as runit enters stage2, sigalrm is delivered to stage2 child (which is the shell because rusnvdir is still not running), stage 2 exits and runit enters in stage3, shutting down the system. this happens because the signal counter is not reset after the signal is ignored. Also affects sigpwr patch, it's one line fix around line 230 of runit.c if (st != 1) { strerr_warn2(WARNING, "signals only work in stage 2.", 0); - sigc =sigi =0; + sigc =sigi =sigp =siga =0; continue; -- System Information: Debian Release: trixie/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 6.8.12-amd64 (SMP w/4 CPU threads; PREEMPT) Kernel taint flags: TAINT_FIRMWARE_WORKAROUND, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: runit (via /run/runit.stopit) LSM: AppArmor: enabled