Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ipxe for openSUSE:Factory checked in at 2026-07-03 16:11:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ipxe (Old) and /work/SRC/openSUSE:Factory/.ipxe.new.1982 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ipxe" Fri Jul 3 16:11:31 2026 rev:26 rq:1363673 version:1.21.1+git20250827.61b4585e2 Changes: -------- --- /work/SRC/openSUSE:Factory/ipxe/ipxe.changes 2026-06-03 20:30:39.373693761 +0200 +++ /work/SRC/openSUSE:Factory/.ipxe.new.1982/ipxe.changes 2026-07-03 16:12:24.712878486 +0200 @@ -1,0 +2,10 @@ +Tue Jun 30 08:35:01 UTC 2026 - Dario Faggioli <[email protected]> + +- Fix QEMU live migration (bsc#1269260) issues by match the legacy + qemu-ipxe ROM sizes and structure. More specifically: + - Drop i386 and aarch64 from FAT EFI ROMs + - Compress (-ec) x86_64 EFI and inject (-b) legacy ROM + - Add PCI class code 0x02 to EfiRom arguments + - Pad all EFI ROMs to exactly 256KB via truncate + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ipxe.spec ++++++ --- /var/tmp/diff_new_pack.rE6wii/_old 2026-07-03 16:12:25.640910671 +0200 +++ /var/tmp/diff_new_pack.rE6wii/_new 2026-07-03 16:12:25.652911087 +0200 @@ -165,36 +165,27 @@ name=$(echo "$nic" | cut -d: -f1) vid=$(echo "$nic" | cut -d: -f2) did=$(echo "$nic" | cut -d: -f3) + # for EfiRom: -f Vendor ID, -i Device ID, -l 0x02 (Network Controller PCI Class) + EFI_ARGS="-f 0x${vid} -i 0x${did} -l 0x02" # Build legacy ROMs if [ "$name" != "e1000e" ] && [ "$name" != "vmxnet3" ]; then make_ipxe $CROSS_PREFIX bin/${vid}${did}.rom cp bin/${vid}${did}.rom pxe-${name}.rom + EFI_ARGS="$EFI_ARGS -b bin/${vid}${did}.rom" fi # Build EFI drivers - EFI_ARGS="-f 0x${vid} -i 0x${did}" - make_ipxe $CROSS_PREFIX bin-i386-efi/${vid}${did}.efidrv - EFI_ARGS="$EFI_ARGS -e bin-i386-efi/${vid}${did}.efidrv" - %ifnarch %{ix86} make_ipxe $CROSS_PREFIX bin-x86_64-efi/${vid}${did}.efidrv - EFI_ARGS="$EFI_ARGS -e bin-x86_64-efi/${vid}${did}.efidrv" - %endif - - %ifarch aarch64 - make_ipxe bin-arm64-efi/${vid}${did}.efidrv - EFI_ARGS="$EFI_ARGS -e bin-arm64-efi/${vid}${did}.efidrv" - %else - %{!?no_aarch64_cc:make_ipxe CROSS="aarch64-suse-linux-" bin-arm64-efi/${vid}${did}.efidrv} - %{!?no_aarch64_cc:EFI_ARGS="$EFI_ARGS -e bin-arm64-efi/${vid}${did}.efidrv"} + EFI_ARGS="$EFI_ARGS -ec bin-x86_64-efi/${vid}${did}.efidrv" %endif # Combine them into FAT EFI ROMs using EfiRom EfiRom $EFI_ARGS -o efi-${name}.rom done -# QEMU's padding logic for legacy ROMs +# QEMU's padding logic (for legacy and EFI ROMs) for name in e1000 eepro100 ne2k_pci pcnet rtl8139 virtio; do size=$(stat -c '%s' pxe-${name}.rom) if [ "$name" = "virtio" ]; then @@ -207,6 +198,13 @@ fi fi done +for name in e1000 eepro100 ne2k_pci pcnet rtl8139 virtio e1000e vmxnet3; do + size=$(stat -c '%s' efi-${name}.rom) + # This is the size of the ROMs provided by the old qemu-ipxe package. + # If this one is larger, we'll have live migration issues (bsc#1269260). + if [ $size -gt 262144 ]; then echo "EFI rom $name too large"; exit 1; fi + truncate -s 262144 efi-${name}.rom +done rm config/local/general.h rm config/local/console.h
