ping? On 2019/7/16 10:06, l00284672 wrote: > > > > > -------- Forwarded Message -------- > Subject: virtio_scsi_ctx_check failed when detach virtio_scsi disk > Date: Mon, 15 Jul 2019 23:34:24 +0800 > From: l00284672 > To: kwolf@redhat.com, berto@igalia.com, Stefan Hajnoczi > , Paolo Bonzini > CC: lizhengui@huawei.com > > > > I found a problem  that virtio_scsi_ctx_check  failed when detaching > virtio_scsi disk.  The  bt is below: > > (gdb) bt > #0  0x0000ffffb02e1bd0 in raise () from /lib64/libc.so.6 > #1  0x0000ffffb02e2f7c in abort () from /lib64/libc.so.6 > #2  0x0000ffffb02db124 in __assert_fail_base () from /lib64/libc.so.6 > #3  0x0000ffffb02db1a4 in __assert_fail () from /lib64/libc.so.6 > #4  0x00000000004eb9a8 invirtio_scsi_ctx_check (d=d@entry=0xc70d790, > s=, s=) >     at /Images/lzg/code/710/qemu-2.8.1/hw/scsi/virtio-scsi.c:243 > #5  0x00000000004ec87c in virtio_scsi_handle_cmd_req_prepare > (s=s@entry=0xd27a7a0, req=req@entry=0xafc4b90) >     at /Images/lzg/code/710/qemu-2.8.1/hw/scsi/virtio-scsi.c:553 > #6  0x00000000004ecc20 in virtio_scsi_handle_cmd_vq (s=0xd27a7a0, > vq=0xd283410) >     at /Images/lzg/code/710/qemu-2.8.1/hw/scsi/virtio-scsi.c:588 > #7  0x00000000004eda20 in virtio_scsi_data_plane_handle_cmd (vdev=0x0, > vq=0xffffae7a6f98) >     at /Images/lzg/code/710/qemu-2.8.1/hw/scsi/virtio-scsi-dataplane.c:57 > #8  0x0000000000877254 in aio_dispatch (ctx=0xac61010) at > util/aio-posix.c:323 > #9  0x00000000008773ec in aio_poll (ctx=0xac61010, blocking=true) at > util/aio-posix.c:472 > #10 0x00000000005cd7cc in iothread_run (opaque=0xac5e4b0) at iothread.c:49 > #11 0x000000000087a8b8 in qemu_thread_start (args=0xac61360) at > util/qemu-thread-posix.c:495 > #12 0x00000000008a04e8 in thread_entry_for_hotfix (pthread_cb=0x0) at > uvp/hotpatch/qemu_hotpatch_helper.c:579 > #13 0x0000ffffb041c8bc in start_thread () from /lib64/libpthread.so.0 > #14 0x0000ffffb0382f8c in thread_start () from /lib64/libc.so.6 > > assert(blk_get_aio_context(d->conf.blk) == s->ctx) failed. > > I think this patch > (https://git.qemu.org/?p=qemu.git;a=commitdiff;h=a6f230c8d13a7ff3a0c7f1097412f44bfd9eff0b) > introduce this problem. > > commit a6f230c8d13a7ff3a0c7f1097412f44bfd9eff0b  move blockbackend > back to main AioContext on unplug. It set the AioContext of > > SCSIDevice  to the main AioContex, but s->ctx is still the iothread > AioContext.  Is this a bug? >