-
Bug
-
Resolution: Done-Errata
-
Normal
-
rhel-9.4
-
qemu-kvm-8.2.0-1.el9
-
None
-
Moderate
-
rhel-sst-virtualization
-
ssg_virtualization
-
None
-
QE ack
-
False
-
-
None
-
Red Hat Enterprise Linux
-
None
-
Pass
-
Automated
-
-
x86_64
-
Linux
-
8.2.0
-
None
What were you trying to do that didn't work?
We should get a warning like "VFIO migration is not supported with postcopy migration" when do mlx vfio post-copy migration, instead of crashes
Please provide the package NVR for which bug is seen:
qemu-kvm-8.1.0-4.el9.x86_64
How reproducible:
100%
Steps to reproduce
(1) create a MT2910 VF and setup the VF for migration
(2) start a Q35 + SEABIOS VM with a mlx VF
(3) do post-copy migration for the VM
# /bin/virsh migrate --verbose --persistent --postcopy --timeout 3 --timeout-postcopy --live rhel93-seabios qemu+ssh://10.73.212.96/system Migration: [50.18 %] error: internal error: QEMU unexpectedly closed the monitor (vm='rhel94'): DS =0000 00000000 0000ffff 00009300 FS =0000 00000000 0000ffff 00009300 GS =0000 00000000 0000ffff 00009300 LDT=0000 00000000 0000ffff 00008200 TR =0000 00000000 0000ffff 00008b00 GDT= 00000000 0000ffff IDT= 00000000 0000ffff CR0=60000010 CR2=00000000 CR3=00000000 CR4=00000000 DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000 DR6=00000000ffff0ff0 DR7=0000000000000400 EFER=0000000000000000 FCW=037f FSW=0000 [ST=0] FTW=00 MXCSR=00001f80 FPR0=0000000000000000 0000 FPR1=0000000000000000 0000 FPR2=0000000000000000 0000 FPR3=0000000000000000 0000 FPR4=0000000000000000 0000 FPR5=0000000000000000 0000 FPR6=0000000000000000 0000 FPR7=0000000000000000 0000 XMM00=0000000000000000 0000000000000000 XMM01=0000000000000000 0000000000000000 XMM02=0000000000000000 0000000000000000 XMM03=0000000000000000 0000000000000000 XMM04=0000000000000000 0000000000000000 XMM05=0000000000000000 0000000000000000 XMM06=0000000000000000 0000000000000000 XMM07=0000000000000000 0000000000000000
The related qemu-kvm log:
2023-11-16T08:55:13.607618Z qemu-kvm: failed to save SaveStateEntry with id(name): 2(ram): -5
2023-11-16T08:55:13.607844Z qemu-kvm: Detected IO failure for postcopy. Migration paused.
Expected results
The mlx vfio post-copy migration is blocked and the qemu-kvm throws a warning like "VFIO migration is not supported with postcopy migration"
Actual results
The mlx vfio post-copy migration can be started but failed and the VM is stuck in the paused status
Additional info:
The fix in qemu-kvm-8.0.0-16.el9_3 does not be included in qemu-kvm 8.1 and will come into 8.2
Upstream patches:
615379764ae6 vfio/migration: Block VFIO migration with background snapshot
bf7ef7a2da3e vfio/migration: Block VFIO migration with postcopy migration
08fc4cb51774 migration: Add .save_prepare() handler to struct SaveVMHandlers
f543aa222da1 migration: Move more initializations to migrate_init()
8118349b1bc5 vfio/migration: Fail adding device with enable-migration=on and existing blocker
38c482b47785 migration: Add migration prefix to functions in target.c
5c7a4b60350e vfio/migration: Allow migration of multiple P2P supporting devices
94f775e428f8 vfio/migration: Add P2P support for VFIO migration
3d4d0f0e0663 vfio/migration: Refactor PRE_COPY and RUNNING state checks
02b2e25360ea qdev: Add qdev_add_vm_change_state_handler_full()
9d3103c81be3 sysemu: Add prepare callback to struct VMChangeStateEntry
5485298ce097 vfio/migration: Move from STOP_COPY to STOP in vfio_save_cleanup()
- is blocked by
-
RHEL-14111 Rebase qemu-kvm to QEMU 8.2.0
- Closed
- links to
-
RHBA-2023:121202 qemu-kvm bug fix and enhancement update