qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* Regression with latest SeaBIOS booting multi-disk root LVs?
@ 2020-09-21 13:10 Stefan Reiter
  2020-09-21 13:44 ` [SeaBIOS] " Paul Menzel
  2020-09-22  5:57 ` Gerd Hoffmann
  0 siblings, 2 replies; 4+ messages in thread
From: Stefan Reiter @ 2020-09-21 13:10 UTC (permalink / raw)
  To: seabios, qemu-devel@nongnu.org

Hi list,

since SeaBIOS 1.14.0 (QEMU 5.1) VMs with LVM root disks spanning more 
than one PV fail to boot, if only the first is set as bootable. I 
believe this is due to the changes in SeaBIOS only initializing drives 
marked as 'bootable' by QEMU.

One fix is to mark all disks containing root data as bootable, but 
existing setups will still break on upgrade (where only the disk 
containing the bootloader is marked). This is not ideal.

Discovered by a user in our bugtracker:
https://bugzilla.proxmox.com/show_bug.cgi?id=3011

and verified by installing Ubuntu 20.04 w/ LVM and GRUB on virtio-scsi, 
then expanding the LV to a second disk.

I found that just reverting SeaBIOS to 1.13.0 makes it work again, same 
guest install, even with QEMU 5.1.

Is this intended behaviour? A bug in GRUB? Any fix or workaround?

~ Stefan



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [SeaBIOS] Regression with latest SeaBIOS booting multi-disk root LVs?
  2020-09-21 13:10 Regression with latest SeaBIOS booting multi-disk root LVs? Stefan Reiter
@ 2020-09-21 13:44 ` Paul Menzel
  2020-09-21 14:38   ` Stefan Reiter
  2020-09-22  5:57 ` Gerd Hoffmann
  1 sibling, 1 reply; 4+ messages in thread
From: Paul Menzel @ 2020-09-21 13:44 UTC (permalink / raw)
  To: Stefan Reiter; +Cc: seabios, qemu-devel

Dear Stefan,


Am 21.09.20 um 15:10 schrieb Stefan Reiter:

> since SeaBIOS 1.14.0 (QEMU 5.1) VMs with LVM root disks spanning more 
> than one PV fail to boot, if only the first is set as bootable. I 
> believe this is due to the changes in SeaBIOS only initializing drives 
> marked as 'bootable' by QEMU.
> 
> One fix is to mark all disks containing root data as bootable, but 
> existing setups will still break on upgrade (where only the disk 
> containing the bootloader is marked). This is not ideal.
> 
> Discovered by a user in our bugtracker:
> https://bugzilla.proxmox.com/show_bug.cgi?id=3011
> 
> and verified by installing Ubuntu 20.04 w/ LVM and GRUB on virtio-scsi, 
> then expanding the LV to a second disk.
> 
> I found that just reverting SeaBIOS to 1.13.0 makes it work again, same 
> guest install, even with QEMU 5.1.
> 
> Is this intended behaviour? A bug in GRUB? Any fix or workaround?

As SeaBIOS 1.13.0 works and SeaBIOS 1.14.0 does not, please bisect the 
issue, and tell us the commit introducing the regression.


Kind regards,

Paul


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [SeaBIOS] Regression with latest SeaBIOS booting multi-disk root LVs?
  2020-09-21 13:44 ` [SeaBIOS] " Paul Menzel
@ 2020-09-21 14:38   ` Stefan Reiter
  0 siblings, 0 replies; 4+ messages in thread
From: Stefan Reiter @ 2020-09-21 14:38 UTC (permalink / raw)
  To: Paul Menzel; +Cc: seabios, qemu-devel

On 21/09/2020 15:44, Paul Menzel wrote:
> Dear Stefan,
> 
> 
> Am 21.09.20 um 15:10 schrieb Stefan Reiter:
> 
>> since SeaBIOS 1.14.0 (QEMU 5.1) VMs with LVM root disks spanning more 
>> than one PV fail to boot, if only the first is set as bootable. I 
>> believe this is due to the changes in SeaBIOS only initializing drives 
>> marked as 'bootable' by QEMU.
>>
>> One fix is to mark all disks containing root data as bootable, but 
>> existing setups will still break on upgrade (where only the disk 
>> containing the bootloader is marked). This is not ideal.
>>
>> Discovered by a user in our bugtracker:
>> https://bugzilla.proxmox.com/show_bug.cgi?id=3011
>>
>> and verified by installing Ubuntu 20.04 w/ LVM and GRUB on 
>> virtio-scsi, then expanding the LV to a second disk.
>>
>> I found that just reverting SeaBIOS to 1.13.0 makes it work again, 
>> same guest install, even with QEMU 5.1.
>>
>> Is this intended behaviour? A bug in GRUB? Any fix or workaround?
> 
> As SeaBIOS 1.13.0 works and SeaBIOS 1.14.0 does not, please bisect the 
> issue, and tell us the commit introducing the regression.
> 

Bisected for virtio-blk drives:

   2f4d068645 "virtio: Do not init non-bootable devices"

...as expected. Also, untested, but I would strongly assume:

   d6bdb85eb0 "virtio-scsi: skip initializing non-bootable devices"

is the equivalent for virtio-scsi devices, and

   76551856b2 "nvme: skip initializing non-bootable devices"

for NVMe.

> 
> Kind regards,
> 
> Paul
> 



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Regression with latest SeaBIOS booting multi-disk root LVs?
  2020-09-21 13:10 Regression with latest SeaBIOS booting multi-disk root LVs? Stefan Reiter
  2020-09-21 13:44 ` [SeaBIOS] " Paul Menzel
@ 2020-09-22  5:57 ` Gerd Hoffmann
  1 sibling, 0 replies; 4+ messages in thread
From: Gerd Hoffmann @ 2020-09-22  5:57 UTC (permalink / raw)
  To: Stefan Reiter; +Cc: seabios, qemu-devel@nongnu.org

On Mon, Sep 21, 2020 at 03:10:51PM +0200, Stefan Reiter wrote:
> Hi list,
> 
> since SeaBIOS 1.14.0 (QEMU 5.1) VMs with LVM root disks spanning more than
> one PV fail to boot, if only the first is set as bootable. I believe this is
> due to the changes in SeaBIOS only initializing drives marked as 'bootable'
> by QEMU.
> 
> One fix is to mark all disks containing root data as bootable, but existing
> setups will still break on upgrade (where only the disk containing the
> bootloader is marked). This is not ideal.
> 
> Discovered by a user in our bugtracker:
> https://bugzilla.proxmox.com/show_bug.cgi?id=3011
> 
> and verified by installing Ubuntu 20.04 w/ LVM and GRUB on virtio-scsi, then
> expanding the LV to a second disk.
> 
> I found that just reverting SeaBIOS to 1.13.0 makes it work again, same
> guest install, even with QEMU 5.1.
> 
> Is this intended behaviour?

Yes, it is intentional.  Save some memory and speed up boot by not
initializing disks which are not needed.

> Any fix or workaround?

 - Assign a bootindex to all drives needed, as you already figured, or

 - Start qemu with -boot strict=off, or

 - Install guest with a /boot filesystem on a normal partition.  Which
   is IMHO a good idea anyway for robustness reasons, you can use all
   lvm features without worrying whenever grub is able to cope or not.

take care,
  Gerd



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-09-22  5:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-21 13:10 Regression with latest SeaBIOS booting multi-disk root LVs? Stefan Reiter
2020-09-21 13:44 ` [SeaBIOS] " Paul Menzel
2020-09-21 14:38   ` Stefan Reiter
2020-09-22  5:57 ` Gerd Hoffmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).