[systemd-devel] systemctl kexec doing normal reboot (POST)
Michal Sekletar
msekleta at redhat.com
Wed Aug 13 08:10:36 UTC 2025
Hi Ian,
I've just tried on a fresh F42 VM and it seems to work correctly.
Out of curiosity, what is the contents of /proc/sys/kernel/bootloader_type
after unsuccessful kexec (i.e. normal reboot) in your case?
Also can you make sure you don't have $SYSTEMCTL_SKIP_AUTO_KEXEC= variable
set when calling systemctl reboot after manually loading kexec kernel.
Michal
On Sun, Aug 10, 2025 at 7:49 PM Ian Pilcher <arequipeno at gmail.com> wrote:
> 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
> ========================================================================
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20250813/991ced2a/attachment-0001.htm>
More information about the systemd-devel
mailing list