[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] Xen guest's bios=ovmf EFI vars are not persistent across guest reboot ?


  • To: xen-users@xxxxxxxxxxxxx
  • From: suse.dev@xxxxxx
  • Date: Wed, 24 Feb 2016 17:40:32 -0800
  • Delivery-date: Thu, 25 Feb 2016 01:41:27 +0000
  • List-id: Xen user discussion <xen-users.lists.xen.org>

I notice that when booting to a Xen UEFI Guest, where its config contains

        bios='ovmf'

that the boot sequence queries for "Floppy" first.  Clearly, there's no floppy 
involved here.


Checking efi vars after boot explains it

        efibootmgr
                BootCurrent: 0002
                Timeout: 0 seconds
                BootOrder: 0000,0001,0002,0003,0004,0005,0006,0007,0008,0009
?               Boot0000* EFI Floppy
?               Boot0001* EFI Floppy 1
                Boot0002* EFI Hard Drive
                Boot0003* EFI Hard Drive 1
                Boot0004* EFI Hard Drive 2
                Boot0005* EFI Misc Device
                Boot0006* EFI Misc Device 1
                Boot0007* EFI Misc Device 2
                Boot0008* EFI Misc Device 3
                Boot0009* EFI Internal Shell

I figured I could avoid it by changing the boot order so the "EFI Hard Drive" 
that the guest is currently booted from is simply sought out first

        efibootmgr -o 2,9,0,1,3,4,5,6,7
                BootCurrent: 0002
                Timeout: 0 seconds
>               BootOrder: 0002,0009,0000,0001,0003,0004,0005,0006,0007
                Boot0000* EFI Floppy
                Boot0001* EFI Floppy 1
>               Boot0002* EFI Hard Drive
                Boot0003* EFI Hard Drive 1
                Boot0004* EFI Hard Drive 2
                Boot0005* EFI Misc Device
                Boot0006* EFI Misc Device 1
                Boot0007* EFI Misc Device 2
                Boot0008* EFI Misc Device 3
                Boot0009* EFI Internal Shell
                Boot000A* Linux Boot Manager

Notice that a new entry has appeared

        Boot000A* Linux Boot Manager

and if I update

        bootctl --path=/boot/efi update 

then the new entry gets set as the 1st entry

        efibootmgr
                BootCurrent: 0002
                Timeout: 0 seconds
>               BootOrder: 000A,0002,0009,0000,0001,0003,0004,0005,0006,0007
                Boot0000* EFI Floppy
                Boot0001* EFI Floppy 1
                Boot0002* EFI Hard Drive
                Boot0003* EFI Hard Drive 1
                Boot0004* EFI Hard Drive 2
                Boot0005* EFI Misc Device
                Boot0006* EFI Misc Device 1
                Boot0007* EFI Misc Device 2
                Boot0008* EFI Misc Device 3
                Boot0009* EFI Internal Shell
>               Boot000A* Linux Boot Manager

And if I now reboot,

(1) the floppy is again/still queried on boot, and fails
(2) the efi vars after reboot are reset to the original

        efibootmgr
                BootCurrent: 0002
                Timeout: 0 seconds
                BootOrder: 0000,0001,0002,0003,0004,0005,0006,0007,0008,0009
                Boot0000* EFI Floppy
                Boot0001* EFI Floppy 1
                Boot0002* EFI Hard Drive
                Boot0003* EFI Hard Drive 1
                Boot0004* EFI Hard Drive 2
                Boot0005* EFI Misc Device
                Boot0006* EFI Misc Device 1
                Boot0007* EFI Misc Device 2
                Boot0008* EFI Misc Device 3
                Boot0009* EFI Internal Shell

Iiuc, these efi vars, and their (non)persistence are the job of the bios, here 
'ovmf'.

How do I set the Xen guest's ovmf-bios efi vars so

(a) the list is trimmed to only the needed/correct items,
(b) the right order is set,
(c) any changes I make are persistent across Guest reboots

?

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.