-
Bug
-
Resolution: Not a Bug
-
Major
-
None
-
rhel-9.4
-
None
-
Important
-
rhel-sst-virtualization
-
ssg_virtualization
-
None
-
False
-
-
None
-
None
-
None
-
None
-
-
x86_64
-
None
What were you trying to do that didn't work?
- When do migration test from RHEL9.4 to RHEL8.10, hit BSOD on Win11 and Win2022 guest.
Please provide the package NVR for which bug is seen:
RHEL9.4.0 Host:
- kernel-5.14.0-417.el9.x86_64
- qemu-kvm-8.2.0-3.el9.x86_64
- edk2-ovmf-20231122-2.el9.noarch
RHEL8.10.0 Host:
- kernel-4.18.0-538.el8.x86_64
- qemu-kvm-6.2.0-46.module+el8.10.0+21144+ad14f781.x86_64
- edk2-ovmf-20220126gitbb1bba3d77-8.el8.noarch
How reproducible:
100%
Steps to reproduce
- On RHEL9.4 host, boot a windows vm(Win11 or Win2022) up:
- # cat ide_stable_guest_abi.sh
/usr/libexec/qemu-kvm \
-name 'avocado-vt-vm1' \
-sandbox on \
-blockdev '{"node-name": "file_ovmf_code", "driver": "file", "filename": "/usr/share/OVMF/OVMF_CODE.secboot.fd", "auto-read-only": true, "discard": "unmap"}' \
-blockdev '{"node-name": "drive_ovmf_code", "driver": "raw", "read-only": true, "file": "file_ovmf_code"}' \
-blockdev '{"node-name": "file_ovmf_vars", "driver": "file", "filename": "/root/avocado/data/avocado-vt/avocado-vt-vm1_win11-64-virtio-scsi_avocado-vt-vm1_qcow2_filesystem_VARS.fd", "auto-read-only": true, "discard": "unmap"}' \
-blockdev '{"node-name": "drive_ovmf_vars", "driver": "raw", "read-only": false, "file": "file_ovmf_vars"}' \
-machine pc-q35-rhel8.6.0,memory-backend=mem-machine_mem,pflash0=drive_ovmf_code,pflash1=drive_ovmf_vars \
-device '{"id": "pcie-root-port-0", "driver": "pcie-root-port", "multifunction": true, "bus": "pcie.0", "addr": "0x1", "chassis": 1}' \
-device '{"id": "pcie-pci-bridge-0", "driver": "pcie-pci-bridge", "addr": "0x0", "bus": "pcie-root-port-0"}' \
-nodefaults \
-device '{"driver": "VGA", "bus": "pcie.0", "addr": "0x2"}' \
-m 5120 \
-object '{"size": 5368709120, "id": "mem-machine_mem", "qom-type": "memory-backend-ram"}' \
-smp 40,maxcpus=40,cores=20,threads=1,dies=1,sockets=2 \
-cpu 'Icelake-Server',ds=on,ss=on,dtes64=on,vmx=on,pdcm=on,hypervisor=on,tsc-adjust=on,avx512ifma=on,sha-ni=on,rdpid=on,fsrm=on,md-clear=on,stibp=on,arch-capabilities=on,xsaves=on,ibpb=on,ibrs=on,amd-stibp=on,amd-ssbd=on,rdctl-no=on,ibrs-all=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,tsx-ctrl=on,hle=off,rtm=off,mpx=off,intel-pt=off,+kvm_pv_unhalt \
-chardev socket,server=on,wait=off,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmpmonitor1-20230222-032849-4RqWCWM1 \
-mon chardev=qmp_id_qmpmonitor1,mode=control \
-chardev socket,server=on,wait=off,id=qmp_id_catch_monitor,path=/var/tmp/monitor-catch_monitor-20230222-032849-4RqWCWM1 \
-mon chardev=qmp_id_catch_monitor,mode=control \
-device '{"ioport": 1285, "driver": "pvpanic", "id": "idabULEz"}' \
-chardev socket,server=on,wait=off,id=chardev_serial0,path=/var/tmp/serial-serial0-20230222-032849-4RqWCWM1 \
-device '{"id": "serial0", "driver": "isa-serial", "chardev": "chardev_serial0"}' \
-chardev socket,id=seabioslog_id_20230222-032849-4RqWCWM1,path=/var/tmp/seabios-20230222-032849-4RqWCWM1,server=on,wait=off \
-device isa-debugcon,chardev=seabioslog_id_20230222-032849-4RqWCWM1,iobase=0x402 \
-device '{"id": "pcie-root-port-1", "port": 1, "driver": "pcie-root-port", "addr": "0x1.0x1", "bus": "pcie.0", "chassis": 2}' \
-device '{"driver": "qemu-xhci", "id": "usb1", "bus": "pcie-root-port-1", "addr": "0x0"}' \
-device '{"driver": "usb-tablet", "id": "usb-tablet1", "bus": "usb1.0", "port": "1"}' \
-device '{"id": "pcie-root-port-2", "port": 2, "driver": "pcie-root-port", "addr": "0x1.0x2", "bus": "pcie.0", "chassis": 3}' \
-blockdev driver=file,cache.direct=off,cache.no-flush=on,filename=/mnt/win2022-64-virtio-scsi-ovmf.qcow2,node-name=my_file -blockdev driver=qcow2,node-name=my,file=my_file -device ide-hd,drive=my,id=ide0-0-0,bus=ide.0,unit=0,bootindex=1 \
-vnc :0 \
-rtc base=localtime,clock=host,driftfix=slew \
-boot menu=off,order=cdn,once=c,strict=off \
-chardev socket,id=char_vtpm_tpm0,path=/tmp/guest-swtpm.sock \
-tpmdev emulator,chardev=char_vtpm_tpm0,id=emulator_vtpm_tpm0 \
-device tpm-crb,id=tpm-crb_vtpm_tpm0,tpmdev=emulator_vtpm_tpm0 \
-enable-kvm \
-qmp tcp:0:1232,server,nowait \
-monitor stdio \
- # cat ide_stable_guest_abi.sh
- On the RHEL8.10 host, boot a dst vm up, add -incoming command:
- # cat ide_stable_guest_abi.sh
/usr/libexec/qemu-kvm \
-name 'avocado-vt-vm1' \
-sandbox on \
-blockdev '{"node-name": "file_ovmf_code", "driver": "file", "filename": "/usr/share/OVMF/OVMF_CODE.secboot.fd", "auto-read-only": true, "discard": "unmap"}' \
-blockdev '{"node-name": "drive_ovmf_code", "driver": "raw", "read-only": true, "file": "file_ovmf_code"}' \
-blockdev '{"node-name": "file_ovmf_vars", "driver": "file", "filename": "/root/avocado/data/avocado-vt/avocado-vt-vm1_win11-64-virtio-scsi_avocado-vt-vm1_qcow2_filesystem_VARS.fd", "auto-read-only": true, "discard": "unmap"}' \
-blockdev '{"node-name": "drive_ovmf_vars", "driver": "raw", "read-only": false, "file": "file_ovmf_vars"}' \
-machine pc-q35-rhel8.6.0,memory-backend=mem-machine_mem,pflash0=drive_ovmf_code,pflash1=drive_ovmf_vars \
-device '{"id": "pcie-root-port-0", "driver": "pcie-root-port", "multifunction": true, "bus": "pcie.0", "addr": "0x1", "chassis": 1}' \
-device '{"id": "pcie-pci-bridge-0", "driver": "pcie-pci-bridge", "addr": "0x0", "bus": "pcie-root-port-0"}' \
-nodefaults \
-device '{"driver": "VGA", "bus": "pcie.0", "addr": "0x2"}' \
-m 5120 \
-object '{"size": 5368709120, "id": "mem-machine_mem", "qom-type": "memory-backend-ram"}' \
-smp 40,maxcpus=40,cores=20,threads=1,dies=1,sockets=2 \
-cpu 'Icelake-Server',ds=on,ss=on,dtes64=on,vmx=on,pdcm=on,hypervisor=on,tsc-adjust=on,avx512ifma=on,sha-ni=on,rdpid=on,fsrm=on,md-clear=on,stibp=on,arch-capabilities=on,xsaves=on,ibpb=on,ibrs=on,amd-stibp=on,amd-ssbd=on,rdctl-no=on,ibrs-all=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,tsx-ctrl=on,hle=off,rtm=off,mpx=off,intel-pt=off,+kvm_pv_unhalt \
-chardev socket,server=on,wait=off,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmpmonitor1-20230222-032849-4RqWCWM1 \
-mon chardev=qmp_id_qmpmonitor1,mode=control \
-chardev socket,server=on,wait=off,id=qmp_id_catch_monitor,path=/var/tmp/monitor-catch_monitor-20230222-032849-4RqWCWM1 \
-mon chardev=qmp_id_catch_monitor,mode=control \
-device '{"ioport": 1285, "driver": "pvpanic", "id": "idabULEz"}' \
-chardev socket,server=on,wait=off,id=chardev_serial0,path=/var/tmp/serial-serial0-20230222-032849-4RqWCWM1 \
-device '{"id": "serial0", "driver": "isa-serial", "chardev": "chardev_serial0"}' \
-chardev socket,id=seabioslog_id_20230222-032849-4RqWCWM1,path=/var/tmp/seabios-20230222-032849-4RqWCWM1,server=on,wait=off \
-device isa-debugcon,chardev=seabioslog_id_20230222-032849-4RqWCWM1,iobase=0x402 \
-device '{"id": "pcie-root-port-1", "port": 1, "driver": "pcie-root-port", "addr": "0x1.0x1", "bus": "pcie.0", "chassis": 2}' \
-device '{"driver": "qemu-xhci", "id": "usb1", "bus": "pcie-root-port-1", "addr": "0x0"}' \
-device '{"driver": "usb-tablet", "id": "usb-tablet1", "bus": "usb1.0", "port": "1"}' \
-device '{"id": "pcie-root-port-2", "port": 2, "driver": "pcie-root-port", "addr": "0x1.0x2", "bus": "pcie.0", "chassis": 3}' \
-blockdev driver=file,cache.direct=off,cache.no-flush=on,filename=/mnt/win2022-64-virtio-scsi-ovmf.qcow2,node-name=my_file -blockdev driver=qcow2,node-name=my,file=my_file -device ide-hd,drive=my,id=ide0-0-0,bus=ide.0,unit=0,bootindex=1 \
-vnc :0 \
-rtc base=localtime,clock=host,driftfix=slew \
-boot menu=off,order=cdn,once=c,strict=off \
-chardev socket,id=char_vtpm_tpm0,path=/tmp/guest-swtpm.sock \
-tpmdev emulator,chardev=char_vtpm_tpm0,id=emulator_vtpm_tpm0 \
-device tpm-crb,id=tpm-crb_vtpm_tpm0,tpmdev=emulator_vtpm_tpm0 \
-enable-kvm \
-qmp tcp:0:1232,server,nowait \
-monitor stdio \
-incoming tcp:10.72.140.60:5888 \
- # cat ide_stable_guest_abi.sh
- On both src and dst qmp monitor, execute follows command:
- $ telnet 10.72.140.74 1232
- {"execute":"qmp_capabilities"}
{"execute":"migrate-set-capabilities","arguments":
Unknown macro: {"capabilities"}]}} — run this command on both src and dst host
- On src qmp monitor, do migrate:
-
Unknown macro: {"execute"}
}
-
-
-
- {"execute":"migrate-start-postcopy"}
- {"execute":"query-migrate"}
-
- Check the dst vm status. ---> BSOD occurred.
Expected results
No BSOD
Actual results
BSOD