<div dir="ltr"><div>Thanks for the further clarifications! Do you think it is worth adding a note to the docs? Something like this:</div><div><br></div><div>> The Erlang runtime sets SIGCHLD to ignore by default. This allows the runtime</div><div>> to run as the root process (PID=1) inside containers and not leak zombie PIDs.</div><div>> If you plan to change said signal, be mindful of the consequences it may have</div><div>> in such cases. Note this behaviour and this message may change in the future.</div><div><br></div><div>I understand if you don't want to write it down though. For now we will set it back to the default when compiling and add a note for users of this particular library so people don't run Elixir as the root process on the Docker.<br></div><div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div><br></div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><b><span style="border-collapse:separate;font-family:arial;font-weight:normal"><div><span><div><span style="font-size:13px"><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><b>José Valim</b></span></div><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><div><span style="font-family:verdana,sans-serif;font-size:x-small"><a href="https://dashbit.co/" style="color:rgb(42,93,176)" target="_blank">https://dashbit.co/</a></span></div></span></div></span></div></span></div></span></b></span></div></div></div></div></div></div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 17, 2020 at 4:21 PM Lukas Larsson <<a href="mailto:lukas@erlang.org">lukas@erlang.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Nov 16, 2020 at 10:02 PM José Valim <<a href="mailto:jose.valim@gmail.com" target="_blank">jose.valim@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">I see, thanks Lukas!</div><div dir="auto"><br></div><div dir="auto">Two follow up questions (please consider that I am not well versed in C):</div><div dir="auto"><br></div><div dir="auto">1. Is there another option we could use instead of waitpid, in case we try to patch upstream?</div><div dir="auto"><br></div></blockquote><div><br></div><div>I didn't read their code very thoroughly before and it seems like they call waitpid with a given pid and not -1 as I assumed, so it may be that their code is safe. I don't know of any better alternative.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"></div><div dir="auto">2. Instead of ignoring, could Erlang install a handler that removes the zombie processes once invoked?</div><div dir="auto"><br></div></blockquote><div><br></div><div>We could, but if I remember correctly we would still have to do multiple waitpid(-1) calls which could end up breaking exactly what tensorflow is doing there, but maybe the WIFEXITED call takes care of that. It was a long time since I had to figure out all of these things and I don't remember the details of how all this works together on all platforms.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div><br></div><div><br></div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><b><span style="border-collapse:separate;font-family:arial;font-weight:normal"><div><span><div><span style="font-size:13px"><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><b>José Valim</b></span></div><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><div><span style="font-family:verdana,sans-serif;font-size:x-small"><a href="https://dashbit.co/" style="color:rgb(42,93,176)" target="_blank">https://dashbit.co/</a></span></div></span></div></span></div></span></div></span></b></span></div></div></div></div></div>
</blockquote></div></div>
</blockquote></div>