summaryrefslogtreecommitdiff
path: root/manager.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2010-04-08 03:22:25 +0200
committerLennart Poettering <lennart@poettering.net>2010-04-08 03:22:25 +0200
commit7072ced8274274cd1b0fa085dd4118462e03884e (patch)
tree5eadaf1eed7dd8180017cc27c058f81025e05872 /manager.c
parenta90ebccc072efa17313fe68c737b3507247c37dd (diff)
manager: print process name for all SIGCHLD received
Diffstat (limited to 'manager.c')
-rw-r--r--manager.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/manager.c b/manager.c
index 7adaa4ed0b..9e4fbbbaed 100644
--- a/manager.c
+++ b/manager.c
@@ -1414,8 +1414,6 @@ unsigned manager_dispatch_dbus_queue(Manager *m) {
static int manager_dispatch_sigchld(Manager *m) {
assert(m);
- log_debug("dispatching SIGCHLD");
-
for (;;) {
siginfo_t si;
Unit *u;
@@ -1469,9 +1467,16 @@ static int manager_process_signal_fd(Manager *m, bool *quit) {
switch (sfsi.ssi_signo) {
- case SIGCHLD:
+ case SIGCHLD: {
+ char *name = NULL;
+
+ get_process_name(sfsi.ssi_pid, &name);
+ log_debug("Got SIGCHLD for process %llu (%s)", (unsigned long long) sfsi.ssi_pid, strna(name));
+ free(name);
+
sigchld = true;
break;
+ }
case SIGINT:
case SIGTERM: