[git commit] acpid: do not install handlers for fatal signals

Denys Vlasenko vda.linux at googlemail.com
Sun Feb 5 14:08:08 UTC 2012


commit: http://git.busybox.net/busybox/commit/?id=bbf1e3c144c1ee93409a0e0546cb56b34eccfcfd
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

For acpid, it's ok to die at once.

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 util-linux/acpid.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/util-linux/acpid.c b/util-linux/acpid.c
index 361a2b2..1b22f3a 100644
--- a/util-linux/acpid.c
+++ b/util-linux/acpid.c
@@ -268,8 +268,12 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
 
 	xchdir(opt_dir);
 
+	/* We spawn children but don't wait for them. Prevent zombies: */
 	bb_signals((1 << SIGCHLD), SIG_IGN);
-	bb_signals(BB_FATAL_SIGS, record_signo);
+	// If you enable this, (1) explain why, (2)
+	// make sure while(poll) loop below is still interruptible
+	// by SIGTERM et al:
+	//bb_signals(BB_FATAL_SIGS, record_signo);
 
 	pfd = NULL;
 	nfd = 0;
@@ -337,7 +341,7 @@ int acpid_main(int argc UNUSED_PARAM, char **argv)
 			}
 			if (!event)
 				continue;
-			// spawn event handler
+			/* spawn event handler */
 			process_event(event);
 		}
 	}


More information about the busybox-cvs mailing list