Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-113406

BSOD screen doesn't show up with VirtIO VGA and dump fails

Linking RHIVOS CVEs to...Migration: Automation ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • None
    • Low
    • CustomerScenariosInitiative
    • rhel-virt-windows
    • ssg_virtualization
    • 3
    • False
    • False
    • Hide

      None

      Show
      None
    • Yes
    • Red Hat Enterprise Linux
    • None
    • None
    • Manual
    • Unspecified Release Note Type - Unknown
    • None

      Describe the bug

      QE found that with a virtio-vga device as the displaying device, when the guest crashes, the BSOD screen doesn't show up and shuts down immediately. Besides, the dump file on the OS was not generated. Turn to a normal VGA device, everything works well(BSOD shows up and a dump file is generated).

      Packages

      • CPU=Intel(R) Xeon(R) Silver 4310 CPU @ 2.10GHz
      • virtio-win-prewhql-0.1-290.iso
      • kernel-6.12.0-122.el10.x86_64
      • seabios-bin-1.16.3-7.el10.noarch
      • edk2-ovmf-20250523-2.el10.noarch
      • swtpm-0.9.0-5.el10.x86_64
      • qemu-kvm-core-10.0.0-12.el10.x86_64

      To Reproduce
      Boot the Windows VM with qemu arguments "-vga virtio" or "-device virtio-vga"
      Trigger the crash of the Windows VM

      Check the BSOD screen

      Expected behavior

      The BSOD screen should show properly with the crashdump file generated successfully.

      {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 10}, "package": "qemu-kvm-10.0.0-12.el10"}, "capabilities": ["oob"]}}         
      {"execute":"qmp_capabilities"}                                           
      {"return": {}}                                                           
      {"execute": "inject-nmi", "id": "4OLxNMkV"}                             
      {"return": {}, "id": "4OLxNMkV"}                                         
      {"timestamp": {"seconds": 1756890440, "microseconds": 261676}, "event": "GUEST_CRASHLOADED", "data": {"action": "run"}}

      Actual results

       The BSOD screen doesn't show up and shuts down immediately, and the dump file on the OS was not generated.

      {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 10}, "package": "qemu-kvm-10.0.0-12.el10"}, "capabilities": ["oob"]}}
      {"execute":"qmp_capbilities"}
      {"return": {}}                                        
      {"execute": "inject-nmi", "id": "4OLxNMkV"}           
      {"return": {}, "id": "4OLxNMkV"}
      {"timestamp": {"seconds": 1757301450, "microseconds": 24160}, "event": "GUEST_PANICKED", "data": {"action": "poweroff"}}
      {"timestamp": {"seconds": 1757301450, "microseconds": 24241}, "event": "SHUTDOWN", "data": {"guest": true, "reason": "guest-panic"}}
      

      Attachment: qemu cmdlines

       /usr/libexec/qemu-kvm \
          -name 'avocado-vt-vm3' \
          -machine q35 \
          -nodefaults \
          -device virtio-vga,id=video \
          -device pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x3 \
          -device pcie-root-port,port=0x11,chassis=2,id=pci.2,bus=pcie.0,addr=0x3.0x1 \
          -device pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x3.0x2 \
          -device pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x3.0x3 \
          -device pcie-root-port,port=0x14,chassis=5,id=pci.5,bus=pcie.0,addr=0x3.0x4 \
          -device pcie-root-port,port=0x15,chassis=6,id=pci.6,bus=pcie.0,addr=0x3.0x5 \
          -device pcie-root-port,port=0x16,chassis=7,id=pci.7,bus=pcie.0,addr=0x3.0x6 \
          -device pcie-root-port,port=0x17,chassis=8,id=pci.8,bus=pcie.0,addr=0x3.0x7 \
          -device virtio-scsi-pci,id=virtio_scsi_pci1,bus=pci.2 \
          -blockdev driver=file,cache.direct=off,cache.no-flush=on,filename=/home/kvm_autotest_root/images/win2022-64-virtio-scsi-ovmf.qcow2,node-name=data_node \
          -blockdev driver=qcow2,node-name=data_disk,file=data_node \
          -device scsi-hd,drive=data_disk,id=disk1,bus=virtio_scsi_pci1.0,serial=kk \
          -device virtio-net-pci,mac=9a:36:83:b6:3d:05,id=idJVpmsF,netdev=id23ZUK6,bus=pci.3  \
          -netdev tap,id=id23ZUK6,vhost=on \
          -m 14336  \
          -smp 2,maxcpus=4 \
          -cpu 'Icelake-Server',hv_stimer,hv_synic,hv_vpindex,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time,hv_frequencies,hv_runtime,hv_tlbflush,hv_reenlightenment,hv_stimer_direct,hv_ipi,hv-xmm-input,hv_tlbflush_ext,kvm_pv_unhalt=on \
          -cdrom /home/kvm_autotest_root/iso/windows/virtio-win-prewhql-0.1-290.iso \
          -device piix3-usb-uhci,id=usb -device usb-tablet,id=input0 \
          -vnc :10  \
          -rtc base=localtime,clock=host,driftfix=slew  \
          -boot order=cdn,once=c,menu=off,strict=off \
          -enable-kvm \
          -qmp tcp:0:1231,server,nowait \
          -monitor stdio \
          -drive file=/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd,if=pflash,format=raw,unit=0,readonly=on  \
          -drive file=/home/OVMF_VARS.fd,if=pflash,format=raw,unit=1  \
          -device ioport=1285,driver="pvpanic"
      

              rhn-support-vrozenfe Vadim Rozenfeld
              rh-ee-wji Wenkang Ji
              Vadim Rozenfeld Vadim Rozenfeld
              Meng Dehan Meng Dehan
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: