Bug#932085: grub-common: Grub can't load initrd for Xen after upgrade to Buster

2019-07-17 Thread Slava Kryvel
Hi,
I’ve upgraded rest of my servers to Buster.
There were BIOS and UEFI machines. But all were booted without any problems
So this issue is related only to one machine.
Unfortunately I have only limited VNC access to this server.
I can see only this text:

Loading Linux 4.19.0-5-amd64 …
Loading initial ramdisk ...

And then nothing. Server stop responding even to ctrl+alt+del through
VNC viewer.

> Maybe you can give a try to the packages from stretch in order to make

> sure it's grub2 the culprit of the issues you are seeing?

Do you mean install grub2 packages from stretch to buster ? I will try and
send the result.

Thanks,
Slava

On 17 July 2019 at 11:05:05, Hans van Kranenburg (h...@knorrie.org) wrote:

On 7/14/19 11:43 PM, Colin Watson wrote:
> On Sun, Jul 14, 2019 at 01:27:23PM -0700, Slava Kryvel wrote:
>> After upgrade from Debian 9.9 to Debian 10 I have got unbootable system.
>>
>> I'm using Xen hypervisor, which was also upgraded from 4.8 to 4.11
>> during OS upgrade.
>> UEFI is enabled.
>>
>> After upgrade was finished, I was unable to boot again to Xen kernel.
>> But normal Debian kernel was still bootable.
>
> [...]
>
> I'm CCing a few folks who've contributed to GRUB's Xen support in one
> way or another in the recent past; hopefully at least one of them can
> help here?

Just to be transparent here, not all possible functionality is tested by
the package maintainers (currently Ian and me) before throwing a new
package into Debian. This is simply not practically feasible for us. [0]

We rely on the upstream tests to know that the upstream Xen code will
probably work. For Debian specific things, we do test our own use cases,
but e.g. UEFI is not one of them. For this, we rely on active users to
report problems and help solving them. So, yes, things like this can
happen.

Thanks for reporting this. Next step would be to follow Rogers
instructions, and provide config dumps, serial console output etc...

We're certainly available to include changes / etc to fix things, given
proper information / testing reports from the user. But, the user has to
actively help to make that happen.

Hans van Kranenburg (with Debian Xen team hat on)

[0]
https://alioth-lists.debian.net/pipermail/pkg-xen-devel/2018-October/007438.html


Bug#932085: grub-common: Grub can't load initrd for Xen after upgrade to Buster

2019-07-14 Thread Slava Kryvel
Package: grub-common
Version: 2.02+dfsg1-20
Severity: critical
Justification: breaks the whole system

Dear Maintainer,

After upgrade from Debian 9.9 to Debian 10 I have got unbootable system.

I'm using Xen hypervisor, which was also upgraded from 4.8 to 4.11
during OS upgrade.
UEFI is enabled.

After upgrade was finished, I was unable to boot again to Xen kernel.
But normal Debian kernel was still bootable.

I have found a workaround to fix my issue - remove option --nounzip from
initrd loading line in grub configuration file /etc/grub.d/20_linux_xen

- module2 --nounzip /boot/initrd.img-4.19.0-5-amd64
+ module2 /boot/initrd.img-4.19.0-5-amd64

I'm not sure there is issue in config, maybe I did something wrong.
So in this case please explain what is correct behavior ?

I can provide additional info about HW and installed packages if necessary.

TIA

Best regards,
Slava

-- Package-specific info:

*** BEGIN /proc/mounts
/dev/mapper/vg--hdd-root / 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
/dev/mapper/vg--hdd-data /data ext4 rw,relatime 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="Debian GNU/Linux, with Xen hypervisor"
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 lvm
insmod ext2
set
root='lvmid/8ri89z-G4cl-Qaz6-ro97-nM6c-4wGh-eb1moP/evRTac-oZIt-LWLM-qktE-3a50-CM8q-wclHgz'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root
--hint='lvmid/8ri89z-G4cl-Qaz6-ro97-nM6c-4wGh-eb1moP/evRTac-oZIt-LWLM-qktE-3a50-CM8q-wclHgz'
 2fc4ef36-a507-47bc-9b50-92fd3123217d
else
  search --no-floppy --fs-uuid --set=root
2fc4ef36-a507-47bc-9b50-92fd3123217d
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=en_US
  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 ###
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' --class debian --class gnu-linux --class gnu
--class os $menuentry_id_option
'gnulinux-simple-2fc4ef36-a507-47bc-9b50-92fd3123217d' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod lvm
insmod ext2
set
root='lvmid/8ri89z-G4cl-Qaz6-ro97-nM6c-4wGh-eb1moP/evRTac-oZIt-LWLM-qktE-3a50-CM8q-wclHgz'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root
--hint='lvmid/8ri89z-G4cl-Qaz6-ro97-nM6c-4wGh-eb1moP/evRTac-oZIt-LWLM-qktE-3a50-CM8q-wclHgz'
 2fc4ef36-a507-47bc-9b50-92fd3123217d
else
  search --no-floppy --fs-uuid --set=root
2fc4ef36-a507-47bc-9b50-92fd3123217d
fi
echo'Loading Linux 4.19.0-5-amd64 ...'
linux   /boot/vmlinuz-4.19.0-5-amd64 root=/dev/mapper/vg--hdd-root
ro  quiet
echo'Loading initial ramdisk ...'
initrd  /boot/initrd.img-4.19.0-5-amd64
}
submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option
'gnulinux-advanced-2fc4ef36-a507-47bc-9b50-92fd3123217d' {
menuentry 'Debian GNU/Linux, with Linux 4.19.0-5-amd64' --class
debian --class gnu-linux --class gnu --class os