Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#1056764: grub-efi-amd64: can't boot with GRUB 2.12~rc1-12

259 views
Skip to first unread message

Nicolas Haller

unread,
Nov 25, 2023, 5:50:04 PM11/25/23
to
Package: grub-efi-amd64
Version: 2.06-13
Severity: critical
Justification: breaks the whole system

Dear Maintainer,

My old laptop (Lenovo 11e) runs Sid and all was right before I updated
it the other day (I don't do that very often). After that upgrade, GRUB
wasn't able to load any kernel with the pretty much generic error
"Error: can't load image". The version of GRUB was 2.12~rc1-12.
If I try to boot again, GRUB tells me that I need to load the image
first (I guess it somehow ignores the linux command and sends that when
trying to load the initrd).

I tried to reinstall grub, grub-install /dev/sda, update-grub, reinstall
the kernel, update-initramfs from the rescue mode but nothing worked.
The "file" command was able to read the vmlinuz file and none seemed
truncated. The system has one partition with both / and /boot and isn't
running out of space.
I did not see any error message during those operation besides GRUB
saying it wasn't able to update EFI parameters.

I don't know if there is a way to get more logs or error message during
the boot explaining why it wasn't able to load the image.

I tried to get the last version of GRUB from Bookworm, that is
2.06-13, and now I'm able to boot. The kernel version did not change,
the only change I did is to downgrade GRUB (and dependencies apt was
asking for).

I'm not sure which GRUB package I should use for reporting so I took the
one that seems the most specific to my system. Apologies if it is not
correct.

Let me know if you need more info.

Thanks,

--
Nicolas Haller

*** Reporter, please consider answering these questions, where appropriate ***

* What led up to the situation?
* What exactly did you do (or not do) that was effective (or
ineffective)?
* What was the outcome of this action?
* What outcome did you expect instead?

*** End of the template - remove these template lines ***


-- Package-specific info:

*********************** BEGIN /proc/mounts
/dev/sda2 / ext4 rw,relatime,errors=remount-ro 0 0
/dev/sda1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0
*********************** END /proc/mounts

*********************** BEGIN /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}

if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=C
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
insmod png
if background_image /usr/share/desktop-base/emerald-theme/grub/grub-16x9.png; then
set color_normal=white/black
set color_highlight=black/white
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.5.0-4-amd64 ...'
linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.5.0-4-amd64
}
submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
menuentry 'Debian GNU/Linux, with Linux 6.5.0-4-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-4-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.5.0-4-amd64 ...'
linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.5.0-4-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.5.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-4-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.5.0-4-amd64 ...'
linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.5.0-4-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.4.0-3-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.4.0-3-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.4.0-3-amd64 ...'
linux /boot/vmlinuz-6.4.0-3-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.4.0-3-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.4.0-3-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.4.0-3-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.4.0-3-amd64 ...'
linux /boot/vmlinuz-6.4.0-3-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.4.0-3-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.1.0-10-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.1.0-10-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.1.0-10-amd64 ...'
linux /boot/vmlinuz-6.1.0-10-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.1.0-10-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.1.0-10-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.1.0-10-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
else
search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
fi
echo 'Loading Linux 6.1.0-10-amd64 ...'
linux /boot/vmlinuz-6.1.0-10-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-6.1.0-10-amd64
}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###
*********************** END /boot/grub/grub.cfg

*********************** BEGIN /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>
*********************** END /proc/mdstat

*********************** BEGIN LVM
*********************** END LVM

*********************** BEGIN /dev/disk/by-id
total 0
lrwxrwxrwx 1 root root 9 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830 -> ../../sda
lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part4 -> ../../sda4
lrwxrwxrwx 1 root root 9 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0 -> ../../sdb
lrwxrwxrwx 1 root root 10 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0-part2 -> ../../sdb2
lrwxrwxrwx 1 root root 9 Nov 25 13:11 wwn-0x5002538d00000000 -> ../../sda
lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part4 -> ../../sda4
*********************** END /dev/disk/by-id

*********************** BEGIN /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 Nov 25 2023 2023-10-07-10-32-09-00 -> ../../sdb1
lrwxrwxrwx 1 root root 10 Nov 25 13:11 3c0e00d0-2f4f-4bd4-93ab-89c317415f1c -> ../../sda3
lrwxrwxrwx 1 root root 10 Nov 25 13:11 7d9badd3-db30-4b48-901f-cedca15e9902 -> ../../sda2
lrwxrwxrwx 1 root root 10 Nov 25 13:11 8A8B-ABC9 -> ../../sda1
lrwxrwxrwx 1 root root 10 Nov 25 13:11 CC5C8EC95C8EADB0 -> ../../sda4
lrwxrwxrwx 1 root root 10 Nov 25 13:11 DEB0-0001 -> ../../sdb2
*********************** END /dev/disk/by-uuid

-- System Information:
Debian Release: trixie/sid
APT prefers stable
APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.5.0-4-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_UNSIGNED_MODULE
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages grub-efi-amd64 depends on:
ii debconf [debconf-2.0] 1.5.82
ii grub-common 2.06-13
ii grub-efi-amd64-bin 2.06-13
ii grub2-common 2.06-13
ii ucf 3.0043+nmu1

grub-efi-amd64 recommends no packages.

grub-efi-amd64 suggests no packages.

-- debconf information:
grub2/kfreebsd_cmdline:
* grub2/update_nvram: true
* grub2/enable_os_prober: false
grub2/kfreebsd_cmdline_default: quiet
* grub2/linux_cmdline_default: quiet psmouse.synaptics_intertouch=0
* grub2/linux_cmdline:
* grub2/force_efi_extra_removable: true
grub2/device_map_regenerated:

deb...@mifritscher.de

unread,
Jan 12, 2024, 4:20:04 PM1/12/24
to
Good day,

does grub 2.12 (without rc1) help? There are a good pile of fixups
between rc1 and release. E.g.
https://git.savannah.gnu.org/cgit/grub.git/commit/?h=grub-2.12&id=1f5b180742ff2706bc3a696d115ddbc677ec75b9
or
https://git.savannah.gnu.org/cgit/grub.git/commit/?h=grub-2.12&id=67ae3981dc5113e5af3a0539174bcd7eab8f7722
could help.

Additionally, the ZFS fixes are needed to boot from volumes touched by
ZFS 2.2 ( https://github.com/openzfs/zfs/issues/13873 ), so migrating to
2.12 is helpful in either case.

Best regards,
Michael Fritscher

Mate Kukri

unread,
Jan 15, 2024, 3:00:04 AM1/15/24
to
Hello,

Just letting you know that the 2.12 merge is in progress, and GRUB
2.12 (non-rc1) will be available in Debian the (hopefully) not too
distant future.

Mate
> _______________________________________________
> Pkg-grub-devel mailing list
> Pkg-gru...@alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-grub-devel

Nicolas Haller

unread,
Jan 16, 2024, 6:10:05 PM1/16/24
to
Hello Mate,

Thanks for letting us know. I just tried with 2.12~rc1-13 and no luck.
I'll wait for 2.12 and let you know if it fixes my issue.

Thanks,

--
Nicolas Haller

On Mon, 15 Jan 2024 07:51:22 +0000 Mate Kukri <mate....@canonical.com>
wrote:

Julian Andres Klode

unread,
Jan 23, 2024, 8:20:05 AM1/23/24
to
Control: severity -1 important

On Sat, Nov 25, 2023 at 05:36:41PM -0500, Nicolas Haller wrote:
> Package: grub-efi-amd64
> Version: 2.06-13
> Severity: critical
> Justification: breaks the whole system
>
> Dear Maintainer,
>
> My old laptop (Lenovo 11e) runs Sid and all was right before I updated
> it the other day (I don't do that very often). After that upgrade, GRUB
> wasn't able to load any kernel with the pretty much generic error
> "Error: can't load image". The version of GRUB was 2.12~rc1-12.
> If I try to boot again, GRUB tells me that I need to load the image
> first (I guess it somehow ignores the linux command and sends that when
> trying to load the initrd).

I'm downgrading this bug severity, as a single system regressing in
boot ability is not release critical. It is not possible for us to
ensure that grub continues working on every single device out there,
this grub will work for more hardware than previous grubs, and blocking
the transition to testing because it doesn't work on your 11e is not
helping anyone.

We have now also uploaded 2.12-1 and of course we welcome any patches,
but an old Lenovo 11e is not a priority, and we don't have any to test
ourselves.
--
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer i speak de, en

Jeremy Davis

unread,
Jan 24, 2024, 1:00:05 AM1/24/24
to
Hi Nicolas,

It might be worth double checking you have the latest BIOS/UEFI? If it's
not the latest, then updating is worth a try IMO.

FWIW I recently updated mine to resolve some (completely unrelated)
issues on my Lenovo Gen 1 X1 Carbon on Bookworm. With no optical drive
and no Windows, it initially seemed like a PITA, but ended up pretty easy.

Process went something like this:

- download relevant BIOS/UEFI update ISO specific to your model from
Lenovo
- extract IMG from ISO (using 'geteltorito' tool in 'genisoimage' pkg)
- write IMG to USB (e.g. using 'dd')
- boot from USB
- update...! :)

If you are already running latest, updating doesn't help, or you want to
try a workaround, perhaps try disabling UEFI (i.e. disable secure boot
and enable "legacy BIOS only" mode) and install the non-uefi grub (i.e.
'grub-pc')?

Good luck.

Cheers,
Jeremy
OpenPGP_signature.asc

Nicolas Haller

unread,
Jan 24, 2024, 9:30:05 PM1/24/24
to
Hello Julian,

I'm not sure why the aggressive tone here, I was asked if this bug
breaks my system and it does. How you want to handle this is up to you.
I think GRUB is a critical piece of a Linux system and I thought it was
worth to report the issue I encounter.

As I mentioned, my Lenovo isn't the newest one but it's not an esoteric
hardware either. It's a pretty regular amd64 laptop.

To be honest, I'm a bit concerned that GRUB failed where it wasn't
before (I would called that a regression) but also that it fails without
giving any error message or any kind of clue that could help to debug this.

I'm not a debian or ubuntu core developer and I don't know the first
thing about how to develop or debug a boot loader. Asking me for patches
isn't helping anyone.

If you have any suggestion in order to fix or just to diagnose the
issue, feel free to share that with me. Meanwhile, I'll try 2.12.1 and
look for an upgrade as Jeremy suggested.

Have a nice day,

--
Nicolas Haller

Mate Kukri

unread,
Jan 25, 2024, 3:30:05 AM1/25/24
to
Hello all,

An idea for a workaround I have on such machines is to add an
environment variable (or some other option) to GRUB that let's GRUB
use the legacy-x86 kernel entry point even if the EFI stub appears
supported (of course only with UEFI Secure Boot disabled).

Based on previous discussion, it unfortunately seems that this isn't
strictly a GRUB issue, and the problem comes from GRUB switching
to booting the kernel using the method now preferred by upstream.

Mate

Nicolas Haller

unread,
Jan 25, 2024, 7:50:04 PM1/25/24
to
Hi Jeremy,

Thanks for the suggestions.
I was able to update my BIOS/UEFI but it didn't solve the issue
unfortunately.

So I change the type of my UEFI partition to BIOS boot partition,
install grub-pc 2.12-1, run a grub-install and change the BIOS setting
to "legacy BIOS only" as you mentioned and I'm able to boot now.

I'm not sure of the consequences of switching from UEFI to BIOS, but at
least, I have a GRUB I don't need to pin to 2.06. :-)

Thanks again for your help.

--
Nicolas Haller

Nicolas Haller

unread,
Jan 25, 2024, 8:00:06 PM1/25/24
to
Hello Mate,

As per Jeremy suggestion, I switched to BIOS/grub-pc and I'm now able to
boot my system. I guess this is not super ideal so I'll let you decide
if you want to keep this bug open or not.

If you need a tester for your idea, I can revert my system to UEFI and
give it a try whenever it's ready.

Thanks,

--
Nicolas Haller

Matt Marjanovic

unread,
Feb 21, 2024, 1:40:04 AM2/21/24
to
Package: grub-efi-amd64
Version: 2.12-1
Followup-For: Bug #1056764
X-Debbugs-Cc: mad...@mir.com

Dear Maintainer,

FYI, I experienced a pretty similar problem today: failure to boot after
upgrading to 2.12-1.

Machine: Lenovo Thinkpad T460p
BIOS: 2.36 (initially)
UEFI boot (without SecureBoot enabled)

Upon reboot, after showing the Lenovo splash screen, the system would just
drop into the BIOS setup screen. My eventual workaround was to boot into
rescue-mode via a Debian 12.5 installer on a USB flashdrive and reinstall
the older grub (bookworm's 2.06-etc) from that.

I did upgrade the BIOS after that (from 2.36 -> 2.37, via fwupdmgr), but
I do not remember if I tried grub 2.12-1 again after that. (By then, I was
just wanting to get some work done.)

-mm


-- Package-specific info:

*********************** BEGIN /proc/mounts
/dev/mapper/mentos--vg-root / ext4 rw,relatime,errors=remount-ro 0 0
/dev/sda4 /boot ext2 rw,relatime 0 0
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
font="/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
insmod png
if background_image /grub/.background_cache.png; then
set color_normal=white/black
set color_highlight=black/white
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
echo 'Loading Linux 6.6.15-amd64 ...'
linux /vmlinuz-6.6.15-amd64 root=/dev/mapper/mentos--vg-root ro quiet rd.driver.blacklist=nouveau nouveau.modeset=0 modprobe.blacklist=nouveau no_console_suspend modprobe.blacklist=mei_wdt rd.driver.blacklist=mei_wdt acpi_osi=Linux
echo 'Loading initial ramdisk ...'
initrd /initrd.img-6.6.15-amd64
}
submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
menuentry 'Debian GNU/Linux, with Linux 6.6.15-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.6.15-amd64-advanced-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
echo 'Loading Linux 6.6.15-amd64 ...'
linux /vmlinuz-6.6.15-amd64 root=/dev/mapper/mentos--vg-root ro quiet rd.driver.blacklist=nouveau nouveau.modeset=0 modprobe.blacklist=nouveau no_console_suspend modprobe.blacklist=mei_wdt rd.driver.blacklist=mei_wdt acpi_osi=Linux
echo 'Loading initial ramdisk ...'
initrd /initrd.img-6.6.15-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.6.15-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.6.15-amd64-recovery-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
echo 'Loading Linux 6.6.15-amd64 ...'
linux /vmlinuz-6.6.15-amd64 root=/dev/mapper/mentos--vg-root ro single single dis_ucode_ldr
echo 'Loading initial ramdisk ...'
initrd /initrd.img-6.6.15-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.5.0-5-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-5-amd64-advanced-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
echo 'Loading Linux 6.5.0-5-amd64 ...'
linux /vmlinuz-6.5.0-5-amd64 root=/dev/mapper/mentos--vg-root ro quiet rd.driver.blacklist=nouveau nouveau.modeset=0 modprobe.blacklist=nouveau no_console_suspend modprobe.blacklist=mei_wdt rd.driver.blacklist=mei_wdt acpi_osi=Linux
echo 'Loading initial ramdisk ...'
initrd /initrd.img-6.5.0-5-amd64
}
menuentry 'Debian GNU/Linux, with Linux 6.5.0-5-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-5-amd64-recovery-19f8d973-adaa-4fa2-8fb4-74ac2cc923f9' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
else
search --no-floppy --fs-uuid --set=root 6c2d2f8f-084d-4291-927b-8a0a77ffa9ba
fi
echo 'Loading Linux 6.5.0-5-amd64 ...'
linux /vmlinuz-6.5.0-5-amd64 root=/dev/mapper/mentos--vg-root ro single single dis_ucode_ldr
echo 'Loading initial ramdisk ...'
initrd /initrd.img-6.5.0-5-amd64
}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### 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 ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###
*********************** END /boot/grub/grub.cfg

*********************** BEGIN /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>
*********************** END /proc/mdstat



-- System Information:
Debian Release: trixie/sid
APT prefers testing
APT policy: (900, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.6.15-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages grub-efi-amd64 depends on:
ii debconf [debconf-2.0] 1.5.86
ii grub-efi-amd64-bin 2.12-1
ii grub2-common 2.12-1
ii ucf 3.0043+nmu1

grub-efi-amd64 recommends no packages.

grub-efi-amd64 suggests no packages.

-- debconf information:
grub2/enable_os_prober: false
grub2/kfreebsd_cmdline_default: quiet
grub2/kfreebsd_cmdline:
* grub2/force_efi_extra_removable: false
* grub2/update_nvram: false
* grub2/linux_cmdline:
* grub2/linux_cmdline_default: quiet rd.driver.blacklist=nouveau nouveau.modeset=0 modprobe.blacklist=nouveau no_console_suspend modprobe.blacklist=mei_wdt rd.driver.blacklist=mei_wdt acpi_osi=Linux
grub2/device_map_regenerated:
0 new messages