Hi there,

After updating my debian 13 last week-end, when I restart my computer, it launches GRUB as usual, but immediately reboots after GRUB had just the time to display a first line, but not even the menuentries. Therefore, I was not able to log in into my debian because it reboots at infinity.

I found this:
### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
fwsetup --is-supported
if [ "$?" = 0 ]; then
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
fi
fi
### END /etc/grub.d/30_uefi-firmware ###

to be the cause of the problem, and since from my point of view these lines seem to be correct, I asked Claude.IA which answered:
************
Look closely at the block: the |fwsetup --is-supported| test is placed *outside* any |menuentry|. So it runs automatically, unconditionally, as soon as GRUB loads |grub.cfg| — before the menu is even displayed, regardless of which entry would be selected.

This command queries an EFI variable (|OsIndicationsSupported|) to check whether the firmware supports rebooting directly into its configuration interface. This is a fairly common UEFI bug (seen on some Dell, HP, Lenovo, ASUS firmwares...): this simple |GetVariable| query causes the firmware to crash, which responds by forcing an immediate reset of the machine. Hence the exact symptom you're describing: a single line of GRUB output, then an instant reboot — well before the menu has any chance to appear.

*************

As a conclusion fwsetup --is-supported should not be used as it is in /etc/grub.d/30_uefi-firmware: as for my case, it is may produce an infinite BIOS reboot for a lot of users.

I just wanted to report this somewhere, and as I was not able to do it with reportbug, I finally decided to post it on this list.

Regards,

Nicolas


Reply via email to