diff options
author | Umut Tezduyar Lindskog <umut.tezduyar@axis.com> | 2014-10-28 16:35:40 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-10-28 17:37:39 +0100 |
commit | db2cb23b5b179707000d28a11efb3d888d06ee80 (patch) | |
tree | d2ee7df6404f5bfaa43a3d0d050fe877866fdce2 /src/core/unit.h | |
parent | f10af76de5e6589e35ed620c75f3f6eb02cdf345 (diff) |
core: send sigabrt on watchdog timeout to get the stacktrace
if sigabrt doesn't do the job, follow regular shutdown
routine, sigterm > sigkill.
Diffstat (limited to 'src/core/unit.h')
-rw-r--r-- | src/core/unit.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/unit.h b/src/core/unit.h index bbad546356..081ab18f10 100644 --- a/src/core/unit.h +++ b/src/core/unit.h @@ -54,6 +54,12 @@ enum UnitActiveState { _UNIT_ACTIVE_STATE_INVALID = -1 }; +typedef enum KillOperation { + KILL_TERMINATE, + KILL_KILL, + KILL_ABORT, +} KillOperation; + static inline bool UNIT_IS_ACTIVE_OR_RELOADING(UnitActiveState t) { return t == UNIT_ACTIVE || t == UNIT_RELOADING; } @@ -576,7 +582,7 @@ int unit_write_drop_in_private_format(Unit *u, UnitSetPropertiesMode mode, const int unit_remove_drop_in(Unit *u, UnitSetPropertiesMode mode, const char *name); -int unit_kill_context(Unit *u, KillContext *c, bool sigkill, pid_t main_pid, pid_t control_pid, bool main_pid_alien); +int unit_kill_context(Unit *u, KillContext *c, KillOperation k, pid_t main_pid, pid_t control_pid, bool main_pid_alien); int unit_make_transient(Unit *u); |