Re: runit: why ignore SIGCONT for stages?

From: Steve Litt <slitt_at_troubleshooters.com>
Date: Sat, 27 Nov 2021 15:45:44 -0500

Guillermo said on Sat, 27 Nov 2021 17:05:14 -0300

>This was meant for the mailing list. I accidentally replied to the
>author instead. Sorry Leah!
>
>El mar, 23 nov 2021 a las 9:18, Leah Neukirchen escribió:
>>
>> [...] This seems to be due to runit(8) before execing
>> into the stages:
>>
>> sig_unblock(sig_cont);
>> sig_ignore(sig_cont);
>> ...
>> strerr_warn3(INFO, "enter stage: ", stage[st], 0);
>> execve(*prog, (char *const *)prog, envp);
>>
>> [...] Can someone explain why?
>
>I guess only the author can provide an authoritative answer, but this
>looks like a bug. It is possible that sig_uncatch() was meant here.
>That's what the code calls for the other two signals that runit(8)
>catches (SIGCHLD and SIGINT).
>
>sig_ignore() makes no sense here, wouldn't that make 'sv cont' useless
>for processes of the init system's supervision tree?

It would seem so, and yet sv cont mydaemon starts up a paused mydaemon.

So there's something we're missing.


SteveT

Steve Litt
Spring 2021 featured book: Troubleshooting Techniques of the Successful
Technologist http://www.troubleshooters.com/techniques
Received on Sat Nov 27 2021 - 21:45:44 CET

This archive was generated by hypermail 2.4.0 : Sat Nov 27 2021 - 21:46:17 CET