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

Reply via email to