From: Jérôme Carretero Date: Fri, 9 Apr 2021 08:55:58 +0000 (-0400) Subject: login: logind-dbus: support scheduled kexec (#19162) X-Git-Tag: v249-rc1~448 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=aba9c9289610e38cf17a97e9cda204a89aa76805;p=thirdparty%2Fsystemd.git login: logind-dbus: support scheduled kexec (#19162) login: logind-dbus: support delayed kexec --- diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index 088136ec860..694a99fba14 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -2140,6 +2140,8 @@ static int manager_scheduled_shutdown_handler( target = SPECIAL_POWEROFF_TARGET; else if (streq(m->scheduled_shutdown_type, "reboot")) target = SPECIAL_REBOOT_TARGET; + else if (streq(m->scheduled_shutdown_type, "kexec")) + target = SPECIAL_KEXEC_TARGET; else if (streq(m->scheduled_shutdown_type, "halt")) target = SPECIAL_HALT_TARGET; else @@ -2205,7 +2207,7 @@ static int method_schedule_shutdown(sd_bus_message *message, void *userdata, sd_ action = "org.freedesktop.login1.power-off"; action_multiple_sessions = "org.freedesktop.login1.power-off-multiple-sessions"; action_ignore_inhibit = "org.freedesktop.login1.power-off-ignore-inhibit"; - } else if (streq(type, "reboot")) { + } else if (STR_IN_SET(type, "reboot", "kexec")) { action = "org.freedesktop.login1.reboot"; action_multiple_sessions = "org.freedesktop.login1.reboot-multiple-sessions"; action_ignore_inhibit = "org.freedesktop.login1.reboot-ignore-inhibit";