Bug 2184823
| Summary: | edk2-omvf does not save EFI boot selections | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Paul Kenyon <pkenyon> | ||||
| Component: | edk2 | Assignee: | Paolo Bonzini <pbonzini> | ||||
| Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 37 | CC: | berrange, crobinso, kraxel, pbonzini, philmd, virt-maint | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2023-05-12 08:12:53 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
Paul Kenyon
2023-04-05 21:01:44 UTC
Please add full libvirt domain xml and efibootmgr output before and after reboot. Created attachment 1964094 [details]
Domain XML
With this domain.xml, secure boot setting can be changed within the EFI setup, saved, and takes effect for all subsequent boots, but EFI boot order changes do not.
Initial EFI boot order, changing the order, before rebooting: [root@localhost ~]# efibootmgr BootCurrent: 0002 Timeout: 0 seconds BootOrder: 0007,0001,0004,0005,0006,0003,0002,0000 Boot0000* UiApp Boot0001* UEFI PXEv4 (MAC:525400E7ECDA) Boot0002* UEFI Misc Device Boot0003* Red Hat Enterprise Linux Boot0004* UEFI PXEv6 (MAC:525400E7ECDA) Boot0005* UEFI HTTPv4 (MAC:525400E7ECDA) Boot0006* UEFI HTTPv6 (MAC:525400E7ECDA) Boot0007* redhat [root@localhost ~]# efibootmgr -o 0001,0007,0003,0002,0000 BootCurrent: 0002 Timeout: 0 seconds BootOrder: 0001,0007,0003,0002,0000 Boot0000* UiApp Boot0001* UEFI PXEv4 (MAC:525400E7ECDA) Boot0002* UEFI Misc Device Boot0003* Red Hat Enterprise Linux Boot0004* UEFI PXEv6 (MAC:525400E7ECDA) Boot0005* UEFI HTTPv4 (MAC:525400E7ECDA) Boot0006* UEFI HTTPv6 (MAC:525400E7ECDA) Boot0007* redhat [root@localhost ~]# EFI boot order after rebooting: [root@localhost ~]# efibootmgr BootCurrent: 0007 Timeout: 0 seconds BootOrder: 0001,0004,0005,0006,0007,0003,0002,0000 Boot0000* UiApp Boot0001* UEFI PXEv4 (MAC:525400E7ECDA) Boot0002* UEFI Misc Device Boot0003* Red Hat Enterprise Linux Boot0004* UEFI PXEv6 (MAC:525400E7ECDA) Boot0005* UEFI HTTPv4 (MAC:525400E7ECDA) Boot0006* UEFI HTTPv6 (MAC:525400E7ECDA) Boot0007* redhat (In reply to Paul Kenyon from comment #2) > Created attachment 1964094 [details] > Domain XML > > With this domain.xml, secure boot setting can be changed within the EFI > setup, saved, and takes effect for all subsequent boots, but EFI boot order > changes do not. You have the boot order configured in the domain xml (<boot order='X'/>), with NIC being first and DISK being second. OVMF will sort the BootOrder variable accordingly, this is intentional behavior. If you don't want that you can just delete these two lines from the domain xml and OVMF will stop reordering. If you delete the boot line, it will always be re-added as <boot dev='hd'/>. Regardless, per my initial message, the boot order of the network devices is not preserved. Is it actually libvirt altering the EFI boot order of the network entries? As a comparison, when boot is set to hd, the disk boot options may be modified, and the order for those options alone persist. (In reply to Paul Kenyon from comment #5) > If you delete the boot line, it will always be re-added as <boot dev='hd'/>. OVMF ignores that, it only looks at <boot order='X'/> entries for devices. > Regardless, per my initial message, the boot order of the network devices is > not preserved. It is preserved. All nic entries are moved to the start of the list in case the nic has the highest priority. The ordering of the nic entries is not changed, if shuffle them to have -- for example -- ipv6 ordered before ipv4 ovmf would keep it. > As a comparison, when boot is set to hd, the disk boot options may be > modified, and the order for those options alone persist. Same logic here. All entries for the disk are moved according to the boot order. Entries pointing to the same disk are grouped together, but keep their existing order within the group. |