]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/login/logind-dbus.c
systemctl: make shutdown operations use irreversible jobs
authorMichal Schmidt <mschmidt@redhat.com>
Fri, 22 Feb 2013 10:21:47 +0000 (11:21 +0100)
committerMichal Schmidt <mschmidt@redhat.com>
Fri, 22 Feb 2013 15:06:17 +0000 (16:06 +0100)
commitb85bdddafb321fa870b9250a2ff17040d6996061
tree7063d5b8cb26bdf13575b1c54a484e08c563d212
parent23ade460e5a118daa575a961b405d089f95e0617
systemctl: make shutdown operations use irreversible jobs

Occasionally people report problem with reboot/poweroff operations hanging in
the middle. One known cause is when a new transaction to start a unit is
enqueued while the shutdown is going on. The start of the unit conflicts with
the shutdown jobs, so they get cancelled. The failure case can be quite unpleasant,
becase getty and sshd may already be stopped.

Fix it by using irreversible jobs for shutdown (reboot/poweroff/...) actions.
This applies to commands like "reboot", "telinit 6", "systemctl reboot". Should
someone desire to use reversible jobs, they can say "systemctl start reboot.target".`
man/systemctl.xml
src/login/logind-dbus.c
src/systemctl/systemctl.c