Bug#1051832: grub-efi-amd64: grub menu not shown on boot after upgrade to 2.12~rc1-9

2024-11-21 Thread Nate Bargmann
Package: grub-efi-amd64
Version: 2.12-5
Followup-For: Bug #1051832

Dear Maintainer,


   * What led up to the situation?

   Trying the netinst ISO and later installing from the Stable installer
   (which does not have this bug) and upgrading the system to Trixie.

   * What exactly did you do (or not do) that was effective (or
 ineffective)?

 Setting 'GRUB_TERMINAL_OUTPUT=console' in /etc/default/grub.

   * What was the outcome of this action?

   The GRUB boot menu is visible.

   * What outcome did you expect instead?

   Originally I expected the boot menu with the graphical splash screen.


The hardware in question is a Lenovo X1 Carbon Generation 3 with UEFI
version 1.34 (latest).  The graphical splash screen was only shown in
legacy BIOS boot mode.  It is not shown in UEFI boot mode irrespective
of Secureboot being enabled or not.  As noted, Stable version
2.06-13+deb12u1 does not exhibit this bug.

- Nate



-- Package-specific info:

*** BEGIN /proc/mounts
/dev/sda5 / ext4 rw,relatime,errors=remount-ro 0 0
/dev/sda7 /home ext4 rw,relatime 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
}

terminal_input console
terminal_output console
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
play 480 440 1
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### 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 GNU/Linux' --class debian --class gnu-linux --class 
gnu --class os $menuentry_id_option 
'gnulinux-simple-bcf2e4ef-8288-44d6-aaee-9146f3f742e6' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt5'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt5 
--hint-efi=hd0,gpt5 --hint-baremetal=ahci0,gpt5  
bcf2e4ef-8288-44d6-aaee-9146f3f742e6
else
  search --no-floppy --fs-uuid --set=root 
bcf2e4ef-8288-44d6-aaee-9146f3f742e6
fi
echo'Loading Linux 6.11.7-amd64 ...'
linux   /boot/vmlinuz-6.11.7-amd64 
root=UUID=bcf2e4ef-8288-44d6-aaee-9146f3f742e6 ro  quiet
echo'Loading initial ramdisk ...'
initrd  /boot/initrd.img-6.11.7-amd64
}
submenu 'Advanced options for Debian GNU/Linux GNU/Linux' $menuentry_id_option 
'gnulinux-advanced-bcf2e4ef-8288-44d6-aaee-9146f3f742e6' {
menuentry 'Debian GNU/Linux GNU/Linux, with Linux 6.11.7-amd64' --class 
debian --class gnu-linux --class gnu --class os $menuentry_id_option 
'gnulinux-6.11.7-amd64-advanced-bcf2e4ef-8288-44d6-aaee-9146f3f742e6' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; 
fi
insmod part_gpt
insmod ext2
set root='hd0,gpt5'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt5 
--hint-efi=hd0,gpt5 --hint-baremetal=ahci0,gpt5  
bcf2e4ef-8288-44d6-aaee-9146f3f742e6
else
  search --no-floppy --fs-uuid --set=root 
bcf2e4ef-8288-44d6-aaee-9146f3f742e6
fi
echo'Loading Linux 6.11.7-amd64 ...

Bug#1051832: grub-efi-amd64: grub menu not shown on boot after upgrade to 2.12~rc1-9

2023-09-13 Thread Agustin Martin
Package: grub-efi-amd64
Version: 2.12~rc1-9
Severity: normal

Dear Maintainer,

After upgrade to 2.12~rc1-9 (from 2.06-13), grub menu is no longer shown during
boot. Pressing Shift key during boot does not help.

Browsing for some info I found

https://askubuntu.com/questions/182248/why-is-grub-menu-not-shown-when-starting-my-computer

where it is noted that sometines, auto loading of grub modules causes
race condition on slow PCs (this is a 10 years old box). To keep grub busy in
console and give enough time to load video modules, it is proposed to add 

# To resolve race condition when loading video drivers
videoinfo

at top of /boot/grub/grub.cfg. Did that, and menu is shown again in graphics
mode.

Adding GRUB_TERMINAL_OUTPUT=console to my /etc/default/grub.d/local-setings.cfg
and running update-grub also makes grub menu appear, now in text mode.

Downgrading to 2.06-13 also makes grub menu appear in graphics mode.

Thanks for your work.

Regards,

-- 
Agustin