From 86b2e20a5e5abf222fb81edcb5d58d012e35cbaa Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 18 Oct 2012 01:20:03 +0200 Subject: [PATCH] units: rework systemd-exit.service to terminate systemd via signal rather than bus This should make session termination more reliable, as D-Bus doesn't have to be around anymore for this to succeed. --- Makefile.am | 1 + configure.ac | 8 +++++--- units/user/systemd-exit.service.in | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Makefile.am b/Makefile.am index 8e88c42c8..e1eb03408 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3613,6 +3613,7 @@ SED_PROCESS = \ -e 's,@rootprefix\@,$(rootprefix),g' \ -e 's,@udevlibexecdir\@,$(udevlibexecdir),g' \ -e 's,@sushell\@,$(sushell),g' \ + -e 's,@KILL\@,$(KILL),g' \ -e 's,@QUOTAON\@,$(QUOTAON),g' \ -e 's,@QUOTACHECK\@,$(QUOTACHECK),g' \ -e 's,@SYSTEM_SYSVINIT_PATH\@,$(sysvinitdir),g' \ diff --git a/configure.ac b/configure.ac index 62e83beb1..a16e7ea28 100644 --- a/configure.ac +++ b/configure.ac @@ -64,10 +64,12 @@ AC_PROG_GCC_TRADITIONAL AC_PATH_PROG([M4], [m4]) AC_PATH_PROG([XSLTPROC], [xsltproc]) -AC_PATH_PROG([QUOTAON], [quotaon], [/sbin/quotaon]) -AC_PATH_PROG([QUOTACHECK], [quotacheck], [/sbin/quotacheck]) +AC_PATH_PROG([QUOTAON], [quotaon], [/usr/sbin/quotaon]) +AC_PATH_PROG([QUOTACHECK], [quotacheck], [/usr/sbin/quotacheck]) -AC_PATH_PROG([SETCAP], [setcap], [/sbin/setcap]) +AC_PATH_PROG([SETCAP], [setcap], [/usr/sbin/setcap]) + +AC_PATH_PROG([KILL], [kill], [/usr/bin/cap]) # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line m4_ifdef([GTK_DOC_CHECK], [ diff --git a/units/user/systemd-exit.service.in b/units/user/systemd-exit.service.in index a114f6c1b..95bd6b116 100644 --- a/units/user/systemd-exit.service.in +++ b/units/user/systemd-exit.service.in @@ -14,4 +14,4 @@ After=shutdown.target [Service] Type=oneshot -ExecStart=@SYSTEMCTL@ --user --force exit +ExecStart=@KILL@ -s RTMAX-6 $MANAGERPID -- 2.30.2