X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fservice.c;h=e110a41daebbdcbcd01e8550ec98a4dca750dd3c;hp=5803f798e0f702ca463d77029cec4d75585d25cb;hb=9e9c3abcfa6b93500960531d0d7aa64b8b2b0349;hpb=a827e37371be78ba7eda63fa6edca1074c431524 diff --git a/src/core/service.c b/src/core/service.c index 5803f798e..e110a41da 100644 --- a/src/core/service.c +++ b/src/core/service.c @@ -235,7 +235,7 @@ static void service_stop_watchdog(Service *s) { s->watchdog_timestamp.monotonic = 0; } -static void service_enter_dead(Service *s, ServiceResult f, bool allow_restart); +static void service_enter_signal(Service *s, ServiceState state, ServiceResult f); static void service_handle_watchdog(Service *s) { usec_t offset; @@ -249,7 +249,7 @@ static void service_handle_watchdog(Service *s) { offset = now(CLOCK_MONOTONIC) - s->watchdog_timestamp.monotonic; if (offset >= s->watchdog_usec) { log_error_unit(UNIT(s)->id, "%s watchdog timeout!", UNIT(s)->id); - service_enter_dead(s, SERVICE_FAILURE_WATCHDOG, true); + service_enter_signal(s, SERVICE_FINAL_SIGKILL, SERVICE_FAILURE_WATCHDOG); return; } @@ -1878,7 +1878,7 @@ static int main_pid_good(Service *s) { return -EAGAIN; } -static int control_pid_good(Service *s) { +_pure_ static int control_pid_good(Service *s) { assert(s); return s->control_pid > 0; @@ -1939,8 +1939,6 @@ fail: service_enter_dead(s, SERVICE_FAILURE_RESOURCES, false); } -static void service_enter_signal(Service *s, ServiceState state, ServiceResult f); - static void service_enter_stop_post(Service *s, ServiceResult f) { int r; assert(s); @@ -2570,7 +2568,7 @@ static int service_reload(Unit *u) { return 0; } -static bool service_can_reload(Unit *u) { +_pure_ static bool service_can_reload(Unit *u) { Service *s = SERVICE(u); assert(s); @@ -2782,7 +2780,7 @@ static int service_deserialize_item(Unit *u, const char *key, const char *value, return 0; } -static UnitActiveState service_active_state(Unit *u) { +_pure_ static UnitActiveState service_active_state(Unit *u) { const UnitActiveState *table; assert(u); @@ -2818,7 +2816,7 @@ static bool service_check_gc(Unit *u) { return false; } -static bool service_check_snapshot(Unit *u) { +_pure_ static bool service_check_snapshot(Unit *u) { Service *s = SERVICE(u); assert(s);