From: Lennart Poettering Date: Mon, 14 Mar 2011 20:27:39 +0000 (+0100) Subject: manager: show who killed us X-Git-Tag: v21~85 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=72fe22f93059ec6bbc9c9da0171e3be9d8b1c9ce manager: show who killed us --- diff --git a/src/manager.c b/src/manager.c index cee434466..919560b05 100644 --- a/src/manager.c +++ b/src/manager.c @@ -2057,6 +2057,8 @@ static int manager_process_signal_fd(Manager *m) { assert(m); for (;;) { + char *p = NULL; + if ((n = read(m->signal_watch.fd, &sfsi, sizeof(sfsi))) != sizeof(sfsi)) { if (n >= 0) @@ -2068,7 +2070,11 @@ static int manager_process_signal_fd(Manager *m) { return -errno; } - log_debug("Received SIG%s", strna(signal_to_string(sfsi.ssi_signo))); + get_process_name(sfsi.ssi_pid, &p); + log_debug("Received SIG%s from PID %lu (%s)", + strna(signal_to_string(sfsi.ssi_signo)), + (unsigned long) sfsi.ssi_pid, strna(p)); + free(p); switch (sfsi.ssi_signo) {