[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