>
>So, whoever calls s6_supervise_lock_mode() should correctly die, as
>there is an actual error (that should be reported to the Hurd
>developers); libs6, libskarnet and the libc are just the messengers.
>Commenting out the errno check just sweeps the error under the carpet.
I assumed the OS was fine, since s6 worked correctly when the check
wasn't performed, and that EIEIO was reported as a catch-all way of
saying "you are trying to do something that cannot happen, i.e. we
haven't planned for this case at all" - which would just be an
oversight in the Hurd fifo code.
Obviously, if there was a *real* problem during the operation and
EIEIO was reported as a panic, the situation is different and the
check should not be removed.
And that is why everyone - including kernels - should always use
different error codes for "can't happen" and "unknown run-time issue".
:)
--
Laurent
Received on Fri Oct 18 2019 - 08:08:09 UTC