]> git.ipfire.org Git - thirdparty/systemd.git/commit
service: handle abort stops with dedicated timeout
authorJan Klötzke <Jan.Kloetzke@preh.de>
Wed, 29 Nov 2017 06:43:44 +0000 (07:43 +0100)
committerLennart Poettering <lennart@poettering.net>
Fri, 12 Apr 2019 15:32:52 +0000 (17:32 +0200)
commitdc653bf487bae9d1ddf794442bf4176fee173b41
treeec2ca709c4d1bdf14dee5252807c8c7e3cb359f0
parent1ace223ca74032a224950665438311eb688f1e05
service: handle abort stops with dedicated timeout

When shooting down a service with SIGABRT the user might want to have a
much longer stop timeout than on regular stops/shutdowns. Especially in
the face of short stop timeouts the time might not be sufficient to
write huge core dumps before the service is killed.

This commit adds a dedicated (Default)TimeoutAbortSec= timer that is
used when stopping a service via SIGABRT. In all other cases the
existing TimeoutStopSec= is used. The timer value is unset by default
to skip the special handling and use TimeoutStopSec= for state
'stop-watchdog' to keep the old behaviour.

If the service is in state 'stop-watchdog' and the service should be
stopped explicitly we still go to 'stop-sigterm' and re-apply the usual
TimeoutStopSec= timeout.
16 files changed:
docs/TRANSIENT-SETTINGS.md
man/systemd-system.conf.xml
man/systemd.service.xml
src/core/dbus-manager.c
src/core/dbus-service.c
src/core/load-fragment-gperf.gperf.m4
src/core/load-fragment.c
src/core/load-fragment.h
src/core/main.c
src/core/manager.h
src/core/service.c
src/core/service.h
src/core/system.conf.in
src/core/user.conf
src/shared/conf-parser.h
test/fuzz/fuzz-unit-file/directives.service