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

BSOD occurs when using virtio_blk or virtio_scsi with prewhql265 after running Driver Verifier

    • rhel-sst-virtualization-windows
    • ssg_virtualization
    • None
    • QE ack
    • False
    • Hide

      None

      Show
      None
    • None
    • Red Hat Enterprise Linux
    • None
    • x86_64
    • Windows
    • None

      What were you trying to do that didn't work?
      After installing the `virtio_blk` or `virtio_scsi` driver on a Win10.x86_64 system, the system reboots normally. However, after running the command `verifier.exe /standard /driver xxx`, a BSOD with the stop code`INACCESSIBLE BOOT DEVICE` occurs. This issue is observed with the prewhql265 version but not with prewhql264, identifying it as a regression bug.

      Please provide the package NVR for which bug is seen:

      • virtio-win-prewhql-0.1-265
      • kernel-5.14.0-516.el9.x86_64
      • edk2-ovmf-20240524-6.el9_5.noarch
      • swtpm-0.8.0-2.el9_4.x86_64
      • qemu-kvm-core-9.1.0-1.el9.x86_64

      How reproducible:
      100%

      Steps to reproduce
      1. Boot a VM using the following qemu-cmdline.
      2. Install the prewhql265 version of the virtio_blk/virtio_scsi driver.
      3. Execute "verifier.exe /standard /driver <virtio_blk/virtio_scsi>.sys"
      4. Reboot the system.

      Expected results
      The system should reboot successfully with the virtio_blk/virtio_scsi driver and function normally without encountering a BSOD.

      Actual results
      After installing the virtio_blk/virtio_scsi driver and rebooting, the system fails to boot and encounters a BSOD with the stop code "INACCESSIBLE BOOT DEVICE."

      Additional Notes:

      /usr/libexec/qemu-kvm \
         -name 'avocado-vt-vm1'  \
         -sandbox on,elevateprivileges=deny,obsolete=deny,resourcecontrol=deny \
         -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_win10-64-virtio-scsi-ovmf_avocado-vt-vm1_qcow2_filesystem_VARS.raw", "auto-read-only": true, "discard": "unmap"}' \
         -blockdev '{"node-name": "drive_ovmf_vars", "driver": "raw", "read-only": false, "file": "file_ovmf_vars"}' \
         -machine q35,pflash0=drive_ovmf_code,pflash1=drive_ovmf_vars,memory-backend=mem-machine_mem \
         -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 14336 \
         -object '{"size": 15032385536, "id": "mem-machine_mem", "qom-type": "memory-backend-ram"}'  \
         -smp 32,maxcpus=32,cores=16,threads=1,dies=1,sockets=2  \
         -cpu 'EPYC-Milan',x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,vaes=on,vpclmulqdq=on,spec-ctrl=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,stibp-always-on=on,virt-ssbd=on,amd-psfd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,flushbyasid=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,no-nested-data-bp=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,gds-no=on,erms=off,fsrm=off,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 \
         -device '{"ioport": 1285, "driver": "pvpanic", "id": "idoO3I4i"}' \
         -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}' \
         -device '{"id": "virtio_scsi_pci0", "driver": "virtio-scsi-pci", "bus": "pcie-root-port-2", "addr": "0x0"}' \
         -blockdev '{"node-name": "file_image1", "driver": "file", "auto-read-only": true, "discard": "unmap", "aio": "threads", "filename": "/home/kvm_autotest_root/images/win10-64-virtio-scsi-ovmf_avocado-vt-vm1.qcow2", "cache": {"direct": true, "no-flush": false}}' \
         -blockdev '{"node-name": "drive_image1", "driver": "qcow2", "read-only": false, "cache": {"direct": true, "no-flush": false}, "file": "file_image1"}' \
         -device '{"driver": "scsi-hd", "id": "image1", "drive": "drive_image1", "write-cache": "on"}' \
         -device '{"driver": "rtl8139", "mac": "9a:e0:0c:xx:xx:xx", "id": "idqowScn", "netdev": "ids7VYKE", "bus": "pcie-pci-bridge-0", "addr": "0x1"}' \
         -netdev  '{"id": "ids7VYKE", "type": "tap", "vhost": true}' \
         -device '{"id": "pcie-root-port-3", "port": 3, "driver": "pcie-root-port", "addr": "0x1.0x3", "bus": "pcie.0", "chassis": 4}' \
         -device '{"driver": "virtio-net-pci", "mac": "9a:e0:0c:xx:xx:xx", "id": "idq98KMC", "netdev": "id7XzDKB", "bus": "pcie-root-port-3", "addr": "0x0"}' \
         -netdev  '{"id": "id7XzDKB", "type": "tap", "vhost": true}' \
         -blockdev '{"node-name": "drive_cd1", "driver": "file", "read-only": true, "discard": "unmap", "aio": "threads", "filename": "/home/kvm_autotest_root/iso/ISO/Win10/windows_10_22h2_x64_testsigned_enable_dvd.iso", "cache": {"direct": true, "no-flush": false}}' \
         -device '{"driver": "ide-cd", "id": "cd1", "drive": "drive_cd1", "write-cache": "on", "bus": "ide.0", "unit": 0}' \
         -blockdev '{"node-name": "drive_virtio", "driver": "file", "read-only": true, "discard": "unmap", "aio": "threads", "filename": "/home/kvm_autotest_root/iso/windows/virtio-win-prewhql-0.1-265.iso", "cache": {"direct": true, "no-flush": false}}' \
         -device '{"driver": "ide-cd", "id": "virtio", "drive": "drive_virtio", "write-cache": "on", "bus": "ide.1", "unit": 0}'  \
         -vnc 0.0.0.0:17  \
         -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 \
         -device '{"id": "pcie_extra_root_port_0", "driver": "pcie-root-port", "multifunction": true, "bus": "pcie.0", "addr": "0x3", "chassis": 5}'
      

        1. start-2019-q35
          4 kB
        2. Capture.JPG
          Capture.JPG
          53 kB

              rhn-support-vrozenfe Vadim Rozenfeld
              rh-ee-wji Wenkang Ji
              Meirav Dean Meirav Dean
              Wenkang Ji Wenkang Ji
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated: