<div dir="ltr">Thanks Lennart.</div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 1, 2017 at 12:55 AM, Lennart Poettering <span dir="ltr"><<a href="mailto:lennart@poettering.net" target="_blank">lennart@poettering.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Di, 31.10.17 17:04, Daniel Wang (<a href="mailto:wonderfly@google.com">wonderfly@google.com</a>) wrote:<br>
<br>
> I hit a bug in systemd-232 and it crashed. Anything I tried to do with<br>
> `systemctl`, including `systemctl daemon-reexec` seemed to rely on the<br>
> systemd dbus service, which all resulted in `Failed to activate service<br>
> 'org.freedesktop.systemd1': timed out`.<br>
><br>
> systemd runs as PID 1. Is there any way to recover without a reboot?<br>
<br>
</span>When PID 1 crashes by a signal this is caught and PID 1 will freeze,<br>
but first close all file descriptors. This normally means that you<br>
cannot contact it anymore, but you should get immediate failure<br>
replies about any attempts as all communication channels are<br>
terminated and not left hanging.<br>
<br>
I wished we could make PID 1 recover fully on such crashes, i.e. by<br>
execing ourselves again on failure signal, however the last time I<br>
looked (which was when we started working on systemd) the kernel<br>
doesn't actually allows reexecing PID 1 anymore after it caught a<br>
deadly signal once...<br>
<br>
Long story short: no you cannot recover from PID 1 crashing. Sorry!<br>
<span class="HOEnZb"><font color="#888888"><br>
Lennart<br>
<br>
--<br>
Lennart Poettering, Red Hat<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Best,</div><div>Daniel</div></div></div>
</div>