Bug 2090139

Summary: qemu crash with error scsi_req_unref(SCSIRequest *): Assertion `req->refcount > 0' failed or scsi_dma_complete(void *, int): Assertion `r->req.aiocb != NULL' failed
Product: Red Hat Enterprise Linux 9 Reporter: qing.wang <qinwang>
Component: qemu-kvmAssignee: Paolo Bonzini <pbonzini>
qemu-kvm sub component: virtio-blk,scsi QA Contact: qing.wang <qinwang>
Status: CLOSED DUPLICATE Docs Contact:
Severity: high    
Priority: medium CC: aliang, chayang, coli, jinzhao, juzhang, kwolf, lijin, pbonzini, qizhu, stefanha, vgoyal, virt-maint, xuwei, ymankad, zhenyzha
Version: 9.1Keywords: Triaged
Target Milestone: rcFlags: pm-rhel: mirror+
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2090990 (view as bug list) Environment:
Last Closed: 2023-02-28 11:01:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2090990    

Description qing.wang 2022-05-25 08:42:37 UTC
Description of problem:
Repeatly hot-plug/unplug many disks some time result in qemu crashed.

There are two different crash places:

1. ../hw/scsi/scsi-bus.c:1366: void scsi_req_unref(SCSIRequest *): Assertion `req->refcount > 0' failed.

2. ../hw/scsi/scsi-disk.c:359: void scsi_dma_complete(void *, int): Assertion `r->req.aiocb != NULL' failed.
 

Version-Release number of selected component (if applicable):

Red Hat Enterprise Linux release 9.1 Beta (Plow)
5.14.0-96.el9.x86_64
qemu-kvm-7.0.0-4.el9.x86_64
seabios-bin-1.16.0-2.el9.noarch
edk2-ovmf-20220221gitb24306f15d-1.el9.noarch
virtio-win-prewhql-0.1-219.iso

How reproducible:
< 10%

Steps to Reproduce:
1.boot vm
/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=on,discard=unmap \
    -blockdev node-name=drive_ovmf_code,driver=raw,read-only=on,file=file_ovmf_code \
    -blockdev node-name=file_ovmf_vars,driver=file,filename=/home/kvm_autotest_root/images/avocado-vt-vm1_rhel860-64-virtio-scsi.qcow2_VARS.fd,auto-read-only=on,discard=unmap \
    -blockdev node-name=drive_ovmf_vars,driver=raw,read-only=off,file=file_ovmf_vars \
    -machine q35,memory-backend=mem-machine_mem,pflash0=drive_ovmf_code,pflash1=drive_ovmf_vars \
    -device pcie-root-port,id=pcie-root-port-0,multifunction=on,bus=pcie.0,addr=0x1,chassis=1 \
    -device pcie-pci-bridge,id=pcie-pci-bridge-0,addr=0x0,bus=pcie-root-port-0  \
    -nodefaults \
    -device VGA,bus=pcie.0,addr=0x2 \
    -m 12288 \
    -object memory-backend-ram,size=12288M,id=mem-machine_mem  \
    -smp 16,maxcpus=16,cores=8,threads=1,dies=1,sockets=2  \
    -cpu 'EPYC-Rome',+kvm_pv_unhalt \
    -device pcie-root-port,id=pcie-root-port-1,port=0x1,addr=0x1.0x1,bus=pcie.0,chassis=2 \
    -device qemu-xhci,id=usb1,bus=pcie-root-port-1,addr=0x0 \
    -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
    -object iothread,id=iothread0 \
    -object iothread,id=iothread1 \
    -device pcie-root-port,id=pcie-root-port-2,port=0x2,addr=0x1.0x2,bus=pcie.0,chassis=3 \
    -device virtio-scsi-pci,id=virtio_scsi_pci0,bus=pcie-root-port-2,addr=0x0,iothread=iothread0 \
    -blockdev node-name=file_image1,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/rhel860-64-virtio-scsi-ovmf.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_image1,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_image1 \
    -device scsi-hd,id=image1,drive=drive_image1,write-cache=on \
    -device pcie-root-port,id=pcie-root-port-3,port=0x3,addr=0x1.0x3,bus=pcie.0,chassis=4 \
    -device virtio-scsi-pci,id=virtio_scsi_pci1,bus=pcie-root-port-3,addr=0x0,iothread=iothread1 \
    -blockdev node-name=file_stg0,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg0.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg0,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg0 \
    -device scsi-hd,id=stg0,bus=virtio_scsi_pci1.0,drive=drive_stg0,write-cache=on,lun=0 \
    -blockdev node-name=file_stg1,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg1.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg1,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg1 \
    -device scsi-hd,id=stg1,bus=virtio_scsi_pci1.0,drive=drive_stg1,write-cache=on,lun=1 \
    -blockdev node-name=file_stg2,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg2.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg2,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg2 \
    -device scsi-hd,id=stg2,bus=virtio_scsi_pci1.0,drive=drive_stg2,write-cache=on,lun=2 \
    -blockdev node-name=file_stg3,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg3.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg3,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg3 \
    -device scsi-hd,id=stg3,bus=virtio_scsi_pci1.0,drive=drive_stg3,write-cache=on,lun=3 \
    -blockdev node-name=file_stg4,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg4.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg4,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg4 \
    -device scsi-hd,id=stg4,bus=virtio_scsi_pci1.0,drive=drive_stg4,write-cache=on,lun=4 \
    -blockdev node-name=file_stg5,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg5.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg5,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg5 \
    -device scsi-hd,id=stg5,bus=virtio_scsi_pci1.0,drive=drive_stg5,write-cache=on,lun=5 \
    -blockdev node-name=file_stg6,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg6.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg6,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg6 \
    -device scsi-hd,id=stg6,bus=virtio_scsi_pci1.0,drive=drive_stg6,write-cache=on,lun=6 \
    -blockdev node-name=file_stg7,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg7.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg7,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg7 \
    -device scsi-hd,id=stg7,bus=virtio_scsi_pci1.0,drive=drive_stg7,write-cache=on,lun=7 \
    -blockdev node-name=file_stg8,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg8.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg8,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg8 \
    -device scsi-hd,id=stg8,bus=virtio_scsi_pci1.0,drive=drive_stg8,write-cache=on,lun=8 \
    -blockdev node-name=file_stg9,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg9.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg9,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg9 \
    -device scsi-hd,id=stg9,bus=virtio_scsi_pci1.0,drive=drive_stg9,write-cache=on,lun=9 \
    -blockdev node-name=file_stg10,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg10.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg10,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg10 \
    -device scsi-hd,id=stg10,bus=virtio_scsi_pci1.0,drive=drive_stg10,write-cache=on,lun=10 \
    -blockdev node-name=file_stg11,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg11.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg11,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg11 \
    -device scsi-hd,id=stg11,bus=virtio_scsi_pci1.0,drive=drive_stg11,write-cache=on,lun=11 \
    -blockdev node-name=file_stg12,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg12.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg12,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg12 \
    -device scsi-hd,id=stg12,bus=virtio_scsi_pci1.0,drive=drive_stg12,write-cache=on,lun=12 \
    -blockdev node-name=file_stg13,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg13.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg13,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg13 \
    -device scsi-hd,id=stg13,bus=virtio_scsi_pci1.0,drive=drive_stg13,write-cache=on,lun=13 \
    -blockdev node-name=file_stg14,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg14.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg14,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg14 \
    -device scsi-hd,id=stg14,bus=virtio_scsi_pci1.0,drive=drive_stg14,write-cache=on,lun=14 \
    -blockdev node-name=file_stg15,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg15.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg15,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg15 \
    -device scsi-hd,id=stg15,bus=virtio_scsi_pci1.0,drive=drive_stg15,write-cache=on,lun=15 \
    -blockdev node-name=file_stg16,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg16.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg16,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg16 \
    -device scsi-hd,id=stg16,bus=virtio_scsi_pci1.0,drive=drive_stg16,write-cache=on,lun=16 \
    -blockdev node-name=file_stg17,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg17.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg17,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg17 \
    -device scsi-hd,id=stg17,bus=virtio_scsi_pci1.0,drive=drive_stg17,write-cache=on,lun=17 \
    -blockdev node-name=file_stg18,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg18.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg18,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg18 \
    -device scsi-hd,id=stg18,bus=virtio_scsi_pci1.0,drive=drive_stg18,write-cache=on,lun=18 \
    -blockdev node-name=file_stg19,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg19.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg19,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg19 \
    -device scsi-hd,id=stg19,bus=virtio_scsi_pci1.0,drive=drive_stg19,write-cache=on,lun=19 \
    -blockdev node-name=file_stg20,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg20.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg20,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg20 \
    -device scsi-hd,id=stg20,bus=virtio_scsi_pci1.0,drive=drive_stg20,write-cache=on,lun=20 \
    -blockdev node-name=file_stg21,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg21.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg21,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg21 \
    -device scsi-hd,id=stg21,bus=virtio_scsi_pci1.0,drive=drive_stg21,write-cache=on,lun=21 \
    -blockdev node-name=file_stg22,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg22.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg22,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg22 \
    -device scsi-hd,id=stg22,bus=virtio_scsi_pci1.0,drive=drive_stg22,write-cache=on,lun=22 \
    -blockdev node-name=file_stg23,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg23.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg23,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg23 \
    -device scsi-hd,id=stg23,bus=virtio_scsi_pci1.0,drive=drive_stg23,write-cache=on,lun=23 \
    -blockdev node-name=file_stg24,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg24.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg24,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg24 \
    -device scsi-hd,id=stg24,bus=virtio_scsi_pci1.0,drive=drive_stg24,write-cache=on,lun=24 \
    -blockdev node-name=file_stg25,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg25.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg25,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg25 \
    -device scsi-hd,id=stg25,bus=virtio_scsi_pci1.0,drive=drive_stg25,write-cache=on,lun=25 \
    -blockdev node-name=file_stg26,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg26.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg26,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg26 \
    -device scsi-hd,id=stg26,bus=virtio_scsi_pci1.0,drive=drive_stg26,write-cache=on,lun=26 \
    -blockdev node-name=file_stg27,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg27.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg27,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg27 \
    -device scsi-hd,id=stg27,bus=virtio_scsi_pci1.0,drive=drive_stg27,write-cache=on,lun=27 \
    -blockdev node-name=file_stg28,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg28.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg28,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg28 \
    -device scsi-hd,id=stg28,bus=virtio_scsi_pci1.0,drive=drive_stg28,write-cache=on,lun=28 \
    -blockdev node-name=file_stg29,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg29.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg29,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg29 \
    -device scsi-hd,id=stg29,bus=virtio_scsi_pci1.0,drive=drive_stg29,write-cache=on,lun=29 \
    -blockdev node-name=file_stg30,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg30.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg30,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg30 \
    -device scsi-hd,id=stg30,bus=virtio_scsi_pci1.0,drive=drive_stg30,write-cache=on,lun=30 \
    -blockdev node-name=file_stg31,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg31.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg31,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg31 \
    -device scsi-hd,id=stg31,bus=virtio_scsi_pci1.0,drive=drive_stg31,write-cache=on,lun=31 \
    -blockdev node-name=file_stg32,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg32.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg32,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg32 \
    -device scsi-hd,id=stg32,bus=virtio_scsi_pci1.0,drive=drive_stg32,write-cache=on,lun=32 \
    -blockdev node-name=file_stg33,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg33.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg33,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg33 \
    -device scsi-hd,id=stg33,bus=virtio_scsi_pci1.0,drive=drive_stg33,write-cache=on,lun=33 \
    -blockdev node-name=file_stg34,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg34.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg34,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg34 \
    -device scsi-hd,id=stg34,bus=virtio_scsi_pci1.0,drive=drive_stg34,write-cache=on,lun=34 \
    -blockdev node-name=file_stg35,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg35.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg35,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg35 \
    -device scsi-hd,id=stg35,bus=virtio_scsi_pci1.0,drive=drive_stg35,write-cache=on,lun=35 \
    -blockdev node-name=file_stg36,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg36.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg36,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg36 \
    -device scsi-hd,id=stg36,bus=virtio_scsi_pci1.0,drive=drive_stg36,write-cache=on,lun=36 \
    -blockdev node-name=file_stg37,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg37.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg37,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg37 \
    -device scsi-hd,id=stg37,bus=virtio_scsi_pci1.0,drive=drive_stg37,write-cache=on,lun=37 \
    -blockdev node-name=file_stg38,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg38.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg38,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg38 \
    -device scsi-hd,id=stg38,bus=virtio_scsi_pci1.0,drive=drive_stg38,write-cache=on,lun=38 \
    -blockdev node-name=file_stg39,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg39.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg39,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg39 \
    -device scsi-hd,id=stg39,bus=virtio_scsi_pci1.0,drive=drive_stg39,write-cache=on,lun=39 \
    -blockdev node-name=file_stg40,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg40.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg40,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg40 \
    -device scsi-hd,id=stg40,bus=virtio_scsi_pci1.0,drive=drive_stg40,write-cache=on,lun=40 \
    -device pcie-root-port,id=pcie-root-port-4,port=0x4,addr=0x1.0x4,bus=pcie.0,chassis=5 \
    -device virtio-net-pci,mac=9a:76:e3:d3:e0:62,id=id54wISJ,netdev=idtzVWfV,bus=pcie-root-port-4,addr=0x0  \
    -netdev tap,id=idtzVWfV,vhost=on  \
    -vnc :5  \
    -qmp tcp:0:5955,server=on,wait=off  \
    -monitor stdio \
    -rtc base=utc,clock=host,driftfix=slew  \
    -boot menu=off,order=cdn,once=c,strict=off \
    -enable-kvm \
    -device pcie-root-port,id=pcie_extra_root_port_0,multifunction=on,bus=pcie.0,addr=0x3,chassis=6

2.run sg_luns.sh script in guest

trap 'kill $(jobs -p)' EXIT SIGINT

for i in `seq 0 32` ; do
	while true ; do
#		sg_luns /dev/sdb > /dev/null 2>&1
    sg_luns /dev/sdb
	done &
done
echo "wait"
wait

3.unplug disks stg1-stg40
{'execute':'device_del', 'arguments': {'id':'stg1'}}
...
{'execute':'device_del', 'arguments': {'id':'stg40'}}

4.sleep 3 seconds

5.plug disks stg1-stg40
{'execute':'device_add', 'arguments': {'driver':'scsi-hd','drive':'drive_stg1','id':'stg1','bus':'virtio_scsi_pci1.0','write-cache': 'on','lun':1}}
...
{'execute':'device_add', 'arguments': {'driver':'scsi-hd','drive':'drive_stg2','id':'stg40','bus':'virtio_scsi_pci1.0','write-cache': 'on','lun':40}}

6.sleep 3 seconds

7 repeat step 3-6 300 times

Actual results:
sometimes the qemu crashed 

Expected results:
no issue happened.

Additional info:
Also find same issue on qemu-kvm-6.2.0-11.el9_0.2.x86_64

Comment 6 qing.wang 2022-05-27 05:46:36 UTC
This isssue irrelevant ovmf, it get same result on 
	/usr/libexec/qemu-kvm \
    -name 'avocado-vt-vm1'  \
    -sandbox on  \
    -machine q35,memory-backend=mem-machine_mem \
    -device pcie-root-port,id=pcie-root-port-0,multifunction=on,bus=pcie.0,addr=0x1,chassis=1 \
    -device pcie-pci-bridge,id=pcie-pci-bridge-0,addr=0x0,bus=pcie-root-port-0  \
    -nodefaults \
    -device VGA,bus=pcie.0,addr=0x2 \
    -m 12288 \
    -object memory-backend-ram,size=12288M,id=mem-machine_mem  \
    -smp 16,maxcpus=16,cores=8,threads=1,dies=1,sockets=2  \
    -cpu 'EPYC-Rome',+kvm_pv_unhalt \
    -device pcie-root-port,id=pcie-root-port-1,port=0x1,addr=0x1.0x1,bus=pcie.0,chassis=2 \
    -device qemu-xhci,id=usb1,bus=pcie-root-port-1,addr=0x0 \
    -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
    -object iothread,id=iothread0 \
    -object iothread,id=iothread1 \
    -device pcie-root-port,id=pcie-root-port-2,port=0x2,addr=0x1.0x2,bus=pcie.0,chassis=3 \
    -device virtio-scsi-pci,id=virtio_scsi_pci0,bus=pcie-root-port-2,addr=0x0,iothread=iothread0 \
    -blockdev node-name=file_image1,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/rhel900-64-virtio-scsi-bios.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_image1,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_image1 \
    -device scsi-hd,id=image1,drive=drive_image1,bootindex=0,write-cache=on \
    -device pcie-root-port,id=pcie-root-port-3,port=0x3,addr=0x1.0x3,bus=pcie.0,chassis=4 \
    -device virtio-scsi-pci,id=virtio_scsi_pci1,bus=pcie-root-port-3,addr=0x0,iothread=iothread1 \
    -blockdev node-name=file_stg0,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg0.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg0,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg0 \
    -device scsi-hd,id=stg0,bus=virtio_scsi_pci1.0,drive=drive_stg0,write-cache=on,lun=0 \
    -blockdev node-name=file_stg1,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg1.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg1,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg1 \
    -device scsi-hd,id=stg1,bus=virtio_scsi_pci1.0,drive=drive_stg1,write-cache=on,lun=1 \
    -blockdev node-name=file_stg2,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg2.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg2,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg2 \
    -device scsi-hd,id=stg2,bus=virtio_scsi_pci1.0,drive=drive_stg2,write-cache=on,lun=2 \
    -blockdev node-name=file_stg3,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg3.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg3,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg3 \
    -device scsi-hd,id=stg3,bus=virtio_scsi_pci1.0,drive=drive_stg3,write-cache=on,lun=3 \
    -blockdev node-name=file_stg4,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg4.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg4,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg4 \
    -device scsi-hd,id=stg4,bus=virtio_scsi_pci1.0,drive=drive_stg4,write-cache=on,lun=4 \
    -blockdev node-name=file_stg5,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg5.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg5,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg5 \
    -device scsi-hd,id=stg5,bus=virtio_scsi_pci1.0,drive=drive_stg5,write-cache=on,lun=5 \
    -blockdev node-name=file_stg6,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg6.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg6,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg6 \
    -device scsi-hd,id=stg6,bus=virtio_scsi_pci1.0,drive=drive_stg6,write-cache=on,lun=6 \
    -blockdev node-name=file_stg7,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg7.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg7,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg7 \
    -device scsi-hd,id=stg7,bus=virtio_scsi_pci1.0,drive=drive_stg7,write-cache=on,lun=7 \
    -blockdev node-name=file_stg8,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg8.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg8,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg8 \
    -device scsi-hd,id=stg8,bus=virtio_scsi_pci1.0,drive=drive_stg8,write-cache=on,lun=8 \
    -blockdev node-name=file_stg9,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg9.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg9,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg9 \
    -device scsi-hd,id=stg9,bus=virtio_scsi_pci1.0,drive=drive_stg9,write-cache=on,lun=9 \
    -blockdev node-name=file_stg10,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg10.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg10,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg10 \
    -device scsi-hd,id=stg10,bus=virtio_scsi_pci1.0,drive=drive_stg10,write-cache=on,lun=10 \
    -blockdev node-name=file_stg11,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg11.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg11,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg11 \
    -device scsi-hd,id=stg11,bus=virtio_scsi_pci1.0,drive=drive_stg11,write-cache=on,lun=11 \
    -blockdev node-name=file_stg12,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg12.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg12,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg12 \
    -device scsi-hd,id=stg12,bus=virtio_scsi_pci1.0,drive=drive_stg12,write-cache=on,lun=12 \
    -blockdev node-name=file_stg13,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg13.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg13,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg13 \
    -device scsi-hd,id=stg13,bus=virtio_scsi_pci1.0,drive=drive_stg13,write-cache=on,lun=13 \
    -blockdev node-name=file_stg14,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg14.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg14,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg14 \
    -device scsi-hd,id=stg14,bus=virtio_scsi_pci1.0,drive=drive_stg14,write-cache=on,lun=14 \
    -blockdev node-name=file_stg15,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg15.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg15,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg15 \
    -device scsi-hd,id=stg15,bus=virtio_scsi_pci1.0,drive=drive_stg15,write-cache=on,lun=15 \
    -blockdev node-name=file_stg16,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg16.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg16,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg16 \
    -device scsi-hd,id=stg16,bus=virtio_scsi_pci1.0,drive=drive_stg16,write-cache=on,lun=16 \
    -blockdev node-name=file_stg17,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg17.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg17,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg17 \
    -device scsi-hd,id=stg17,bus=virtio_scsi_pci1.0,drive=drive_stg17,write-cache=on,lun=17 \
    -blockdev node-name=file_stg18,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg18.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg18,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg18 \
    -device scsi-hd,id=stg18,bus=virtio_scsi_pci1.0,drive=drive_stg18,write-cache=on,lun=18 \
    -blockdev node-name=file_stg19,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg19.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg19,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg19 \
    -device scsi-hd,id=stg19,bus=virtio_scsi_pci1.0,drive=drive_stg19,write-cache=on,lun=19 \
    -blockdev node-name=file_stg20,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg20.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg20,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg20 \
    -device scsi-hd,id=stg20,bus=virtio_scsi_pci1.0,drive=drive_stg20,write-cache=on,lun=20 \
    -blockdev node-name=file_stg21,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg21.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg21,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg21 \
    -device scsi-hd,id=stg21,bus=virtio_scsi_pci1.0,drive=drive_stg21,write-cache=on,lun=21 \
    -blockdev node-name=file_stg22,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg22.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg22,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg22 \
    -device scsi-hd,id=stg22,bus=virtio_scsi_pci1.0,drive=drive_stg22,write-cache=on,lun=22 \
    -blockdev node-name=file_stg23,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg23.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg23,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg23 \
    -device scsi-hd,id=stg23,bus=virtio_scsi_pci1.0,drive=drive_stg23,write-cache=on,lun=23 \
    -blockdev node-name=file_stg24,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg24.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg24,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg24 \
    -device scsi-hd,id=stg24,bus=virtio_scsi_pci1.0,drive=drive_stg24,write-cache=on,lun=24 \
    -blockdev node-name=file_stg25,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg25.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg25,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg25 \
    -device scsi-hd,id=stg25,bus=virtio_scsi_pci1.0,drive=drive_stg25,write-cache=on,lun=25 \
    -blockdev node-name=file_stg26,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg26.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg26,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg26 \
    -device scsi-hd,id=stg26,bus=virtio_scsi_pci1.0,drive=drive_stg26,write-cache=on,lun=26 \
    -blockdev node-name=file_stg27,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg27.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg27,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg27 \
    -device scsi-hd,id=stg27,bus=virtio_scsi_pci1.0,drive=drive_stg27,write-cache=on,lun=27 \
    -blockdev node-name=file_stg28,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg28.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg28,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg28 \
    -device scsi-hd,id=stg28,bus=virtio_scsi_pci1.0,drive=drive_stg28,write-cache=on,lun=28 \
    -blockdev node-name=file_stg29,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg29.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg29,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg29 \
    -device scsi-hd,id=stg29,bus=virtio_scsi_pci1.0,drive=drive_stg29,write-cache=on,lun=29 \
    -blockdev node-name=file_stg30,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg30.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg30,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg30 \
    -device scsi-hd,id=stg30,bus=virtio_scsi_pci1.0,drive=drive_stg30,write-cache=on,lun=30 \
    -blockdev node-name=file_stg31,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg31.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg31,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg31 \
    -device scsi-hd,id=stg31,bus=virtio_scsi_pci1.0,drive=drive_stg31,write-cache=on,lun=31 \
    -blockdev node-name=file_stg32,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg32.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg32,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg32 \
    -device scsi-hd,id=stg32,bus=virtio_scsi_pci1.0,drive=drive_stg32,write-cache=on,lun=32 \
    -blockdev node-name=file_stg33,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg33.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg33,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg33 \
    -device scsi-hd,id=stg33,bus=virtio_scsi_pci1.0,drive=drive_stg33,write-cache=on,lun=33 \
    -blockdev node-name=file_stg34,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg34.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg34,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg34 \
    -device scsi-hd,id=stg34,bus=virtio_scsi_pci1.0,drive=drive_stg34,write-cache=on,lun=34 \
    -blockdev node-name=file_stg35,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg35.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg35,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg35 \
    -device scsi-hd,id=stg35,bus=virtio_scsi_pci1.0,drive=drive_stg35,write-cache=on,lun=35 \
    -blockdev node-name=file_stg36,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg36.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg36,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg36 \
    -device scsi-hd,id=stg36,bus=virtio_scsi_pci1.0,drive=drive_stg36,write-cache=on,lun=36 \
    -blockdev node-name=file_stg37,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg37.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg37,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg37 \
    -device scsi-hd,id=stg37,bus=virtio_scsi_pci1.0,drive=drive_stg37,write-cache=on,lun=37 \
    -blockdev node-name=file_stg38,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg38.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg38,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg38 \
    -device scsi-hd,id=stg38,bus=virtio_scsi_pci1.0,drive=drive_stg38,write-cache=on,lun=38 \
    -blockdev node-name=file_stg39,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg39.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg39,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg39 \
    -device scsi-hd,id=stg39,bus=virtio_scsi_pci1.0,drive=drive_stg39,write-cache=on,lun=39 \
    -blockdev node-name=file_stg40,driver=file,auto-read-only=on,discard=unmap,aio=native,filename=/home/kvm_autotest_root/images/mstg40.qcow2,cache.direct=on,cache.no-flush=off \
    -blockdev node-name=drive_stg40,driver=qcow2,read-only=off,cache.direct=on,cache.no-flush=off,file=file_stg40 \
    -device scsi-hd,id=stg40,bus=virtio_scsi_pci1.0,drive=drive_stg40,write-cache=on,lun=40 \
    -device pcie-root-port,id=pcie-root-port-4,port=0x4,addr=0x1.0x4,bus=pcie.0,chassis=5 \
    -device virtio-net-pci,mac=9a:76:e3:d3:e0:61,id=id54wISJ,netdev=idtzVWfV,bus=pcie-root-port-4,addr=0x0  \
    -netdev tap,id=idtzVWfV,vhost=on  \
    -vnc :5  \
    -qmp tcp:0:5955,server=on,wait=off  \
    -monitor stdio \
    -rtc base=utc,clock=host,driftfix=slew  \
    -boot menu=off,order=cdn,once=c,strict=off \
    -enable-kvm \
    -device pcie-root-port,id=pcie_extra_root_port_0,multifunction=on,bus=pcie.0,addr=0x3,chassis=6

Comment 7 Kevin Wolf 2022-05-27 12:28:02 UTC
Paolo, do these stack traces ring a bell?

Comment 8 Paolo Bonzini 2022-05-27 12:40:04 UTC
Nope, but I can try to reproduce.

Comment 19 Kevin Wolf 2023-02-28 11:01:01 UTC
We don't need two different BZs for the same test case and fix. The difference is just that this one was tested against 9.1 and the other one against 9.2. Let's close this one. If we ever need a fix in 9.1, we'll need to request a new z-stream clone anyway.

*** This bug has been marked as a duplicate of bug 2155748 ***

Comment 20 qing.wang 2023-03-03 06:12:09 UTC
Hit same issue on 

Red Hat Enterprise Linux release 9.0 (Plow)
5.14.0-70.43.1.el9_0.x86_64
qemu-kvm-6.2.0-11.el9_0.7.x86_64
seabios-bin-1.15.0-1.el9.noarch
edk2-ovmf-20220126gitbb1bba3d77-3.el9_0.1.noarch
libvirt-8.0.0-8.6.el9_0.x86_64
virtio-win-prewhql-0.1-234.iso


#0  0x00007f906c18542c __pthread_kill_implementation (libc.so.6>
                #1  0x00007f906c138d06 raise (libc.so.6 + 0x59d06)
                #2  0x00007f906c10b7d3 abort (libc.so.6 + 0x2c7d3)
                #3  0x00007f906c10b6fb __assert_fail_base.cold (libc.so.6 + 0x2>
                #4  0x00007f906c131c86 __assert_fail (libc.so.6 + 0x52c86)
                #5  0x000055d3ba8992ed scsi_req_unref (qemu-kvm + 0x4f62ed)
                #6  0x000055d3ba89ee97 scsi_dma_complete (qemu-kvm + 0x4fbe97)
                #7  0x000055d3ba7557e8 dma_blk_cb (qemu-kvm + 0x3b27e8)
                #8  0x000055d3bab6b978 blk_aio_complete_bh (qemu-kvm + 0x7c8978)
                #9  0x000055d3bad0c099 aio_poll (qemu-kvm + 0x969099)
                #10 0x000055d3bab367c6 iothread_run (qemu-kvm + 0x7937c6)
                #11 0x000055d3bad0ff4a qemu_thread_start (qemu-kvm + 0x96cf4a)
                #12 0x00007f906c1836c2 start_thread (libc.so.6 + 0xa46c2)
                #13 0x00007f906c1233f0 __clone3 (libc.so.6 + 0x443f0)