diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-07-05 17:36:55 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-07-05 17:36:55 -0400 |
commit | fff055c7c141a72ac0930b626b29155cdbde5522 (patch) | |
tree | c0283c9d55b938d43d191a9939559d897308906e | |
parent | 05ef3798dd1c9fc030ca16ec518b5d2973c7aa1b (diff) |
work around boot problem caused by a bug in systemdv20160705
-rw-r--r-- | nshd.service.in | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/nshd.service.in b/nshd.service.in index 176d276..7760687 100644 --- a/nshd.service.in +++ b/nshd.service.in @@ -15,3 +15,16 @@ ExecReload=/bin/kill -HUP $MAINPID [Install] Also=nshd.socket + +# The following is a workaround for a scheduling deadlock in systemd +# v230 (and probably other versions). What "naturally" happens is +# that we would be socket-activated by systemd-logind which is +# dbus-activated during systemd' dbus_init(), which is called when +# dbus.service starts. However, systemd is buggy and won't activate +# any services during dbus_init(), so the whole thing deadlocks. A +# timeout means that boot eventually continues, but we are left with a +# half-working system. +[Unit] +Before=dbus.service +[Install] +WantedBy=dbus.service |