[systemd-devel] systemctl kexec doing normal reboot (POST)
Ian Pilcher
arequipeno at gmail.com
Sun Aug 10 17:48:46 UTC 2025
I'm playing around, trying to use 'systemctl kexec' for faster reboots.
Thus far, I haven't been able to get it to work; I'm always getting a
"normal" reboot (including the firmware POST).
My system (Fedora 42) is using UEFI boot, with secure boot disabled.
systemd-boot is the bootloader.
> $ sudo bootctl --no-pager
> System:
> Firmware: UEFI 2.40 (American Megatrends 5.10)
> Firmware Arch: x64
> Secure Boot: disabled (setup)
> TPM2 Support: no
> Measured UKI: no
> Boot into FW: supported
>
> Current Boot Loader:
> Product: systemd-boot 257.7-1.fc42
> Features: ✓ Boot counting
> ✓ Menu timeout control
> ✓ One-shot menu timeout control
> ✓ Default entry control
> ✓ One-shot entry control
> ✓ Support for XBOOTLDR partition
> ✓ Support for passing random seed to OS
> ✓ Load drop-in drivers
> ✓ Support Type #1 sort-key field
> ✓ Support @saved pseudo-entry
> ✓ Support Type #1 devicetree field
> ✓ Enroll SecureBoot keys
> ✓ Retain SHIM protocols
> ✓ Menu can be disabled
> ✓ Multi-Profile UKIs are supported
> ✓ Boot loader set partition information
> Partition: /dev/disk/by-partuuid/e3cdac2c-91c9-4be9-abdd-b97a9dea16f0
> Loader: └─/EFI/SYSTEMD/SYSTEMD-BOOTX64.EFI
> Current Entry: e74ab0d2949c479eb03abdab1b1acd41-6.15.9-201.fc42.x86_64.conf
>
> Random Seed:
> System Token: set
> Exists: yes
>
> Available Boot Loaders on ESP:
> ESP: /efi (/dev/disk/by-partuuid/e3cdac2c-91c9-4be9-abdd-b97a9dea16f0)
> File: ├─/EFI/systemd/systemd-bootx64.efi (systemd-boot 257.7-1.fc42)
> ├─/EFI/BOOT/BOOTX64.EFI (systemd-boot v245.8-2.fc32)
> ├─/EFI/BOOT/fallback.efi
> └─/EFI/BOOT/fbx64.efi
>
> Boot Loaders Listed in EFI Variables:
> Title: Linux
> ID: 0x0000
> Status: active, boot-order
> Partition: /dev/disk/by-partuuid/e3cdac2c-91c9-4be9-abdd-b97a9dea16f0
> File: └─/EFI/SYSTEMD/SYSTEMD-BOOTX64.EFI
>
> Title: Windows Boot Manager
> ID: 0x0005
> Status: active, boot-order
> Partition: /dev/disk/by-partuuid/e3cdac2c-91c9-4be9-abdd-b97a9dea16f0
> File: └─/EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
>
> Boot Loader Entries:
> $BOOT: /efi (/dev/disk/by-partuuid/e3cdac2c-91c9-4be9-abdd-b97a9dea16f0)
> token: fedora
>
> Default Boot Loader Entry:
> type: Boot Loader Specification Type #1 (.conf)
> title: Fedora Linux 42 (Adams) (6.15.9-201.fc42.x86_64)
> id: e74ab0d2949c479eb03abdab1b1acd41-6.15.9-201.fc42.x86_64.conf
> source: /efi//loader/entries/e74ab0d2949c479eb03abdab1b1acd41-6.15.9-201.fc42.x86_64.conf (on the EFI System Partition)
> sort-key: fedora
> version: 6.15.9-201.fc42.x86_64
> machine-id: e74ab0d2949c479eb03abdab1b1acd41
> linux: /efi//e74ab0d2949c479eb03abdab1b1acd41/6.15.9-201.fc42.x86_64/linux
> initrd: /efi//e74ab0d2949c479eb03abdab1b1acd41/6.15.9-201.fc42.x86_64/initrd
> options: root=/dev/mapper/vg_breadbox-lv_fedora ro rd.lvm.lv=vg_breadbox/lv_fedora elevator=deadline intel_iommu=on systemd.machine_id=e74ab0d2949c479eb03abdab1b1acd41
I don't see any obviously fatal errors when I do a dry run.
> $ sudo SYSTEMD_LOG_LEVEL=debug systemctl --dry-run kexec
> Bus n/a: changing state UNSET → OPENING
> sd-bus: starting bus by connecting to /run/dbus/system_bus_socket...
> Bus n/a: changing state OPENING → AUTHENTICATING
> Bus n/a: changing state AUTHENTICATING → HELLO
> Sent message type=method_call sender=n/a destination=org.freedesktop.DBus path=/org/freedesktop/DBus interface=org.freedesktop.DBus member=Hello cookie=1 reply_cookie=0 signature=n/a error-name=n/a error-message=n/a
> Got message type=method_return sender=org.freedesktop.DBus destination=:1.17 path=n/a interface=n/a member=n/a cookie=4294967295 reply_cookie=1 signature=s error-name=n/a error-message=n/a
> Bus n/a: changing state HELLO → RUNNING
> Sent message type=method_call sender=n/a destination=org.freedesktop.login1 path=/org/freedesktop/login1 interface=org.freedesktop.login1.Manager member=ListInhibitors cookie=2 reply_cookie=0 signature=n/a error-name=n/a error-message=n/a
> Got message type=method_return sender=:1.2 destination=:1.17 path=n/a interface=n/a member=n/a cookie=33 reply_cookie=2 signature=a(ssssuu) error-name=n/a error-message=n/a
> Found container virtualization none.
> /dev/sda2: Partition has wrong PART_ENTRY_TYPE=0fc63daf-8483-4772-8e79-3d69d8477de4 for XBOOTLDR partition.
> Reading EFI variable /sys/firmware/efi/efivars/LoaderEntryOneShot-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f.
> open("/sys/firmware/efi/efivars/LoaderEntryOneShot-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f") failed: No such file or directory
> Reading EFI variable /sys/firmware/efi/efivars/LoaderEntryDefault-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f.
> open("/sys/firmware/efi/efivars/LoaderEntryDefault-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f") failed: No such file or directory
> Reading EFI variable /sys/firmware/efi/efivars/LoaderEntrySelected-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f.
> Found default: id "e74ab0d2949c479eb03abdab1b1acd41-6.15.9-201.fc42.x86_64.conf" is matched by pattern "e74ab0d2949c479eb03abdab1b1acd41-*"
> Found default boot loader entry in file "/efi/loader/entries/e74ab0d2949c479eb03abdab1b1acd41-6.15.9-201.fc42.x86_64.conf"
> Would run /usr/sbin/kexec --load "/efi/e74ab0d2949c479eb03abdab1b1acd41/6.15.9-201.fc42.x86_64/linux" --append "root=/dev/mapper/vg_breadbox-lv_fedora ro rd.lvm.lv=vg_breadbox/lv_fedora elevator=deadline intel_iommu=on systemd.machine_id=e74ab0d2949c479eb03abdab1b1acd41" --initrd "/efi/e74ab0d2949c479eb03abdab1b1acd41/6.15.9-201.fc42.x86_64/initrd"
> Would set wall message "".
> Would execute org.freedesktop.login1.Manager RebootWithFlags dbus call.
> Bus n/a: changing state RUNNING → CLOSED
Nonetheless, running 'systemctl kexec' is doing a normal reboot,
including the firmware POST.
Any pointers on how to troubleshoot this further would be appreciated.
Thanks!
--
========================================================================
If your user interface is intuitive in retrospect ... it isn't intuitive
========================================================================
More information about the systemd-devel
mailing list