commit | f4095cff01ae83fed2c21035805a9db33f37b2c2 | [log] [tgz] |
---|---|---|
author | Ryan Prichard <rprichard@google.com> | Wed Apr 11 18:46:38 2018 -0700 |
committer | Ryan Prichard <rprichard@google.com> | Thu Apr 12 14:15:26 2018 -0700 |
tree | 9a5797679ec99b4c125526ac3e05c871f4d6c930 | |
parent | 0cc5bdc6bf94762f46aa717a80033260b48e0e9d [diff] |
init: use signalfd to catch SIGCHLD Previously, if init received too many SIGCHLD signals, then the write to signal_write_fd could fail with EAGAIN. The handler tried to log the EAGAIN error, and init deadlocked if the interrupted init process had already acquired a logging-related lock. Bug: b/77867680 Test: manual Change-Id: Ief0b5e94d8517827a5a7d03773391ba3ba9447c4