[Bug 1911187] Re: scheduled reboot reboots immediately if dbus or logind is not available
Ioanna Alifieraki
1911187 at bugs.launchpad.net
Tue Feb 23 13:25:32 UTC 2021
Debdiff for Focal.
** Patch added: "lp1911187_focal.debdiff"
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1911187/+attachment/5466202/+files/lp1911187_focal.debdiff
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1911187
Title:
scheduled reboot reboots immediately if dbus or logind is not
available
Status in systemd package in Ubuntu:
Confirmed
Status in systemd source package in Bionic:
Confirmed
Status in systemd source package in Focal:
Confirmed
Status in systemd source package in Groovy:
Confirmed
Bug description:
[IMPACT]
When, for whatever reason, logind or dbus is not available scheduled reboot reboots the machine immediately.
From the sources it seems that this is intended :
https://github.com/systemd/systemd/blob/master/src/systemctl/systemctl-logind.c#L318
However, I report this as a bug since this is against the logic of a scheduled reboot; if someone schedules a reboot they want the system to reboot at the specified time not immediately.
There has been a discussion upstream ( https://github.com/systemd/systemd/issues/17575 ) and
a PR ( https://github.com/systemd/systemd/pull/18010 ).
Upstream community is not willing to accept the patch but debian is.
I open this bug to to pull the patch into Ubuntu once it lands in debian.
[TEST CASE]
The simpler reproducer is to disable dbus to imitate the real world
case.
# systemctl stop dbus.service
# systemctl stop dbus.socket
# shutdown +1140 -r "REBOOT!"
Failed to set wall message, ignoring: Failed to activate service 'org.freedesktop.login1': timed out (service_start_timeout=25000ms)
Failed to call ScheduleShutdown in logind, proceeding with immediate shutdown: Connection timed out
Connection to groovy closed by remote host.
Connection to groovy closed.
[REGRESSION POTENTIAL]
This patch changes the behaviour of scheduled reboot in case logind or dbus has failed.
Originally, if logind is not available (call to logind bus fails
https://github.com/systemd/systemd/blob/master/src/systemctl/systemctl-logind.c#L319)
it proceeds with immediate shutdown.
This patch changes this behaviour and instead of shutting down it does nothing.
The actual regression potential is a user asking for a reboot and not getting it.
Other than that the changes in the code are very small and simple and unlikely to break anything.
[OTHER]
This is now fixed in H, currently affects B,G,F.
Debian bug reports :
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=931235
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=960042
Upstream issue : https://github.com/systemd/systemd/issues/17575
PR : https://github.com/systemd/systemd/pull/18010
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1911187/+subscriptions
More information about the foundations-bugs
mailing list