[systemd-devel] [PATCH] Add a note to pam_systemd(8) about relationship of controllers= and DefaultControllers= in systemd.conf(5)

Mike Kazantsev mk.fraggod at gmail.com
Sun Jan 29 17:15:05 PST 2012


Good day,

I managed to shoot myself in the foot with described thing by extending
DefaultControllers= list in systemd.conf(5) - systemd took a pid list
from new controller and killed them every time when getty at ttyX was
respawned, effectively emulating kill-session-processes=1 in my case.

Guess it's not that hard to spot relationship between these options, but
maybe it should be explicitly documented?

Also, not sure if the issue really affects stuff like gdm, but I assume
they do respawn via Restart=, so it should.
Otherwise maybe the patch is less relevant and note should probably be
corrected to mention getty specifically.


From d6baa7e3e1e40a224a366935a412544ca2f0b814 Mon Sep 17 00:00:00 2001
From: Mike Kazantsev <mk.fraggod at gmail.com>
Date: Mon, 30 Jan 2012 07:01:05 +0600
Subject: [PATCH] man: add a note to pam_systemd(8) about controllers= vs
 DefaultControllers=

---
 man/pam_systemd.xml |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/man/pam_systemd.xml b/man/pam_systemd.xml
index 883b50b..ec53f87 100644
--- a/man/pam_systemd.xml
+++ b/man/pam_systemd.xml
@@ -217,6 +217,15 @@
                 ends, the latter kills processes as soon as the last
                 session of the user ends.</para>
 
+                <para>Also note that <varname>controllers=</varname>
+                setting must be a superset of <varname>DefaultControllers=</varname> in
+                <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                (or <varname>ControlGroup=</varname> in a login manager unit file),
+                otherwise restarting getty (or other login manager service)
+                will cause systemd to send SIGKILL to the pids that are left in
+                controllers not covered by <varname>controllers=</varname> option,
+                just like <varname>kill-session-processes=1</varname> would do.</para>
+
                 <para>If the options are omitted they default to
                 <option>kill-session-processes=0</option>,
                 <option>kill-only-users=</option>,
-- 
1.7.8.1

-- 
Mike Kazantsev // fraggod.net


More information about the systemd-devel mailing list