Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to QEMU 9.1 by switching to bookworm backports #197

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

robertvolkmann
Copy link
Contributor

@robertvolkmann robertvolkmann commented Nov 9, 2024

Description

Ubuntu 20.04 has QEMU 4.2
Bookworm has QEMU 7.2

The image size for ghcr.io/metal-stack/mini-lab-vms decreased from 452MB to 333MB, while ghcr.io/metal-stack/mini-lab-sonic increased from 2.57GB to 2.67GB. Both images now share the same base image.

Ubuntu 20.04 uses QEMU 4.2
Bookworm uses QEMU 7.2
@robertvolkmann
Copy link
Contributor Author

OVMF is compiled with HTTP boot and IPv6 PXE booting enabled, that significantly slows down booting:

BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x5,0x0): Not Found

>>Start PXE over IPv4.
PXE-E18: Server response timeout.
BdsDxe: failed to load Boot0002 "UEFI PXEv4 (MAC:AAC1AB7F04EC)" from PciRoot(0x0)/Pci(0x1,0x0)/MAC(AAC1AB7F04EC,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0): Not Found

>>Start PXE over IPv6.
  PXE-E16: No valid offer received.
BdsDxe: failed to load Boot0003 "UEFI PXEv6 (MAC:AAC1AB7F04EC)" from PciRoot(0x0)/Pci(0x1,0x0)/MAC(AAC1AB7F04EC,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000,0x0,Static,0000:0000:0000:0000:0000:0000:0000:0000,0x40,0000:0000:0000:0000:0000:0000:0000:0000): Not Found

>>Start HTTP Boot over IPv4.
  Error: Could not retrieve NBP file size from HTTP server.

  Error: Server response timeout.
BdsDxe: failed to load Boot0004 "UEFI HTTPv4 (MAC:AAC1AB7F04EC)" from PciRoot(0x0)/Pci(0x1,0x0)/MAC(AAC1AB7F04EC,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)/Uri(): Not Found

>>Start HTTP Boot over IPv6.
  Error: Could not retrieve NBP file size from HTTP server.

  Error: Unexpected network error.
BdsDxe: failed to load Boot0005 "UEFI HTTPv6 (MAC:AAC1AB7F04EC)" from PciRoot(0x0)/Pci(0x1,0x0)/MAC(AAC1AB7F04EC,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000,0x0,Static,0000:0000:0000:0000:0000:0000:0000:0000,0x40,0000:0000:0000:0000:0000:0000:0000:0000)/Uri(): Not Found

>>Start PXE over IPv4.
  PXE-E18: Server response timeout.
BdsDxe: failed to load Boot0006 "UEFI PXEv4 (MAC:AAC1ABE6EBF2)" from PciRoot(0x0)/Pci(0x2,0x0)/MAC(AAC1ABE6EBF2,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0): Not Found

>>Start PXE over IPv6.
  PXE-E16: No valid offer received.
BdsDxe: failed to load Boot0007 "UEFI PXEv6 (MAC:AAC1ABE6EBF2)" from PciRoot(0x0)/Pci(0x2,0x0)/MAC(AAC1ABE6EBF2,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000,0x0,Static,0000:0000:0000:0000:0000:0000:0000:0000,0x40,0000:0000:0000:0000:0000:0000:0000:0000): Not Found

>>Start HTTP Boot over IPv4.
  Error: Could not retrieve NBP file size from HTTP server.

  Error: Server response timeout.
BdsDxe: failed to load Boot0008 "UEFI HTTPv4 (MAC:AAC1ABE6EBF2)" from PciRoot(0x0)/Pci(0x2,0x0)/MAC(AAC1ABE6EBF2,0x1)/IPv4(0.0.0.0,0x0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)/Uri(): Not Found

>>Start HTTP Boot over IPv6.
  Error: Could not retrieve NBP file size from HTTP server.

  Error: Unexpected network error.
BdsDxe: failed to load Boot0009 "UEFI HTTPv6 (MAC:AAC1ABE6EBF2)" from PciRoot(0x0)/Pci(0x2,0x0)/MAC(AAC1ABE6EBF2,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000,0x0,Static,0000:0000:0000:0000:0000:0000:0000:0000,0x40,0000:0000:0000:0000:0000:0000:0000:0000)/Uri(): Not Found
BdsDxe: loading Boot000A "EFI Internal Shell" from Fv(7CB8BDC9-F8EB-4F34-AAEA-3EE4AF6516A1)/FvFile(7C04A583-9E3E-4F1C-AD65-E05268D0B4D1)
BdsDxe: starting Boot000A "EFI Internal Shell" from Fv(7CB8BDC9-F8EB-4F34-AAEA-3EE4AF6516A1)/FvFile(7C04A583-9E3E-4F1C-AD65-E05268D0B4D1)

UEFI Interactive Shell v2.2
EDK II
UEFI v2.70 (EDK II, 0x00010000)
Mapping table
     BLK0: Alias(s):
          PciRoot(0x0)/Pci(0x3,0x0)
Press ESC in 1 seconds to skip startup.nsh or any other key to continue.
Shell> 

@robertvolkmann robertvolkmann marked this pull request as ready for review November 10, 2024 21:02
@robertvolkmann robertvolkmann requested a review from a team as a code owner November 10, 2024 21:02
@robertvolkmann
Copy link
Contributor Author

The rules from the Debian OVMF package are as follows:

COMMON_FLAGS  = -DNETWORK_HTTP_BOOT_ENABLE=TRUE
COMMON_FLAGS += -DNETWORK_IP6_ENABLE=TRUE
COMMON_FLAGS += -DNETWORK_TLS_ENABLE
COMMON_FLAGS += -DSECURE_BOOT_ENABLE=TRUE
COMMON_FLAGS += -DTPM2_ENABLE=TRUE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant