Re: s6-permafailon not acting as expected

From: Laurent Bercot <ska-supervision_at_skarnet.org>
Date: Mon, 16 Nov 2020 22:05:26 +0000

>The service did die with exit code 0, but s6-permafail is wrong, since
>exit code 0 is not specified in the filter.
>
>Looking at the source code in s6-permafailon.c, it seems to me that
>the codes[32] bitarray is not initialized with zeroes before calling
>bitarray_set(n).

  You're probably right that it is the issue! (codes was a static
variable in the first iteration; static variables do not need to be
0-initialized. But then I reworked the code, made codes an automatic
variable, and failed to initialize it to zero. And that is why relying
on magic features is a bad thing, and I should stop doing this out of
laziness.)

  I fixed it in the latest git of s6; if you prefer numbered releases,
I'm working on a bigger release (with some interface changes and a
major version bump) that should happen before the end of the year, but
not right now ^^'

  Please try the fixed version. If you don't want to use the git head,
you can apply the very simple diff:
  
https://git.skarnet.org/cgi-bin/cgit.cgi/s6/diff/src/supervision/s6-permafailon.c

  If that version doesn't solve your problem, then I'll investigate
further.

  Thanks for the report!

--
  Laurent
Received on Mon Nov 16 2020 - 22:05:26 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:19 UTC