sts-sponsors team mailing list archive
-
sts-sponsors team
-
Mailing list archive
-
Message #02679
[Bug 1911187] Re: scheduled reboot reboots immediately if dbus or logind is not available
# VERIFICATION GROOVY
Installed systemd from -proposed :
# dpkg -l | grep systemd
ii libnss-resolve:amd64 246.6-1ubuntu1.2 amd64 nss module to resolve names via systemd-resolved
ii libnss-systemd:amd64 246.6-1ubuntu1.2 amd64 nss module providing dynamic user and group name resolution
ii libpam-systemd:amd64 246.6-1ubuntu1.2 amd64 system and service manager - PAM module
ii libsystemd-dev:amd64 246.6-1ubuntu1.2 amd64 systemd utility library - development files
ii libsystemd0:amd64 246.6-1ubuntu1.2 amd64 systemd utility library
ii systemd 246.6-1ubuntu1.2 amd64 system and service manager
ii systemd-container 246.6-1ubuntu1.2 amd64 systemd container/nspawn tools
ii systemd-journal-remote 246.6-1ubuntu1.2 amd64 tools for sending and receiving remote journal logs
ii systemd-sysv 246.6-1ubuntu1.2 amd64 system and service manager - SysV links
ii systemd-tests 246.6-1ubuntu1.2 amd64 tests for systemd
ii systemd-timesyncd 246.6-1ubuntu1.2 amd64 minimalistic service to synchronize local time with NTP servers
Following test plan from description
# systemctl stop dbus.service
# systemctl stop dbus.socket
# shutdown +1 -r "REBOOT!"
Failed to set wall message, ignoring: Connection timed out
Failed to call ScheduleShutdown in logind, no action will be taken: Failed to activate service 'org.freedesktop.login1': timed out (service_start_timeout=25000ms)
Machine does not reboot as expected.
** Tags removed: verification-needed verification-needed-groovy
** Tags added: verification-done verification-done-groovy
--
You received this bug notification because you are a member of STS
Sponsors, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1911187
Title:
scheduled reboot reboots immediately if dbus or logind is not
available
Status in systemd package in Ubuntu:
Fix Released
Status in systemd source package in Bionic:
Fix Committed
Status in systemd source package in Focal:
Fix Committed
Status in systemd source package in Groovy:
Fix Committed
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 PLAN]
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.
[WHERE PROBLEM COULD OCCUR]
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, so the largest regression potential is any existing users (human or programmatic) that are requesting a scheduled shutdown but not checking the return value for error.
Any other regression would likely result in the system incorrectly not rebooted, or incorrectly scheduled for reboot.
[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