chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cgroup: mount cgroup file systems to /sys/fs/cgroup instead of /cgroup
[elogind.git]
/
src
/
manager.c
diff --git
a/src/manager.c
b/src/manager.c
index 4e8ddfb2357f473b02cb33db5d31ac22c9277c42..09b2c789ed0c5de538f35ef07cd46a9fa61d366d 100644
(file)
--- a/
src/manager.c
+++ b/
src/manager.c
@@
-57,6
+57,7
@@
#include "path-lookup.h"
#include "special.h"
#include "bus-errors.h"
#include "path-lookup.h"
#include "special.h"
#include "bus-errors.h"
+#include "exit-status.h"
/* As soon as 16 units are in our GC queue, make sure to run a gc sweep */
#define GC_QUEUE_ENTRIES_MAX 16
/* As soon as 16 units are in our GC queue, make sure to run a gc sweep */
#define GC_QUEUE_ENTRIES_MAX 16
@@
-1786,7
+1787,7
@@
static int manager_process_notify_fd(Manager *m) {
if (n >= 0)
return -EIO;
if (n >= 0)
return -EIO;
- if (errno == EAGAIN)
+ if (errno == EAGAIN
|| errno == EINTR
)
break;
return -errno;
break;
return -errno;
@@
-1885,7
+1886,9
@@
static int manager_dispatch_sigchld(Manager *m) {
(long unsigned) si.si_pid,
sigchld_code_to_string(si.si_code),
si.si_status,
(long unsigned) si.si_pid,
sigchld_code_to_string(si.si_code),
si.si_status,
- strna(si.si_code == CLD_EXITED ? exit_status_to_string(si.si_status) : signal_to_string(si.si_status)));
+ strna(si.si_code == CLD_EXITED
+ ? exit_status_to_string(si.si_status, EXIT_STATUS_FULL)
+ : signal_to_string(si.si_status)));
if (!u)
continue;
if (!u)
continue;
@@
-1928,7
+1931,7
@@
static int manager_process_signal_fd(Manager *m) {
if (n >= 0)
return -EIO;
if (n >= 0)
return -EIO;
- if (errno == EAGAIN)
+ if (errno == E
INTR || errno == E
AGAIN)
break;
return -errno;
break;
return -errno;