[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 28/28] vhost-scsi: prevent using uninitialized vqs
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL v2 28/28] vhost-scsi: prevent using uninitialized vqs |
Date: |
Wed, 24 Oct 2018 20:55:06 -0400 |
From: yuchenlin <address@hidden>
There are 3 virtqueues (ctrl, event and cmd) for virtio scsi device,
but seabios will only set the physical address for the 3rd one (cmd).
Then in vhost_virtqueue_start(), virtio_queue_get_desc_addr()
will be 0 for ctrl and event vq.
In this case, ctrl and event vq are not initialized.
vhost_verify_ring_mappings may use uninitialized vhost_virtqueue
such that vhost_verify_ring_part_mapping returns ENOMEM.
When encountered this problem, we got the following logs:
qemu-system-x86_64: Unable to map available ring for ring 0
qemu-system-x86_64: Verify ring failure on region 0
Signed-off-by: Forrest Liu <address@hidden>
Signed-off-by: yuchenlin <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
hw/scsi/vhost-scsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/scsi/vhost-scsi.c b/hw/scsi/vhost-scsi.c
index becf550085..7f21b4f9d6 100644
--- a/hw/scsi/vhost-scsi.c
+++ b/hw/scsi/vhost-scsi.c
@@ -183,7 +183,7 @@ static void vhost_scsi_realize(DeviceState *dev, Error
**errp)
}
vsc->dev.nvqs = VHOST_SCSI_VQ_NUM_FIXED + vs->conf.num_queues;
- vsc->dev.vqs = g_new(struct vhost_virtqueue, vsc->dev.nvqs);
+ vsc->dev.vqs = g_new0(struct vhost_virtqueue, vsc->dev.nvqs);
vsc->dev.vq_index = 0;
vsc->dev.backend_features = 0;
--
MST
- [Qemu-devel] [PULL v2 18/28] hw/pci-host/x86: extract get_pci_hole64_start_value() helpers, (continued)
- [Qemu-devel] [PULL v2 18/28] hw/pci-host/x86: extract get_pci_hole64_start_value() helpers, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 19/28] hw/pci-host/x86: extend the 64-bit PCI hole relative to the fw-assigned base, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 21/28] hw/pci-bridge/xio3130: Remove unused functions, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 22/28] hw/pci-bridge/ioh3420: Remove unuseful header, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 23/28] hw/pci: Add missing include, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 20/28] tests/bios-tables-test: add 64-bit PCI MMIO aperture round-up test on Q35, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 25/28] i440fx: use ARRAY_SIZE for pam_regions, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 24/28] pci_bridge: fix typo in comment, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 26/28] piix: use TYPE_FOO constants than string constats, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 27/28] piix_pci: fix i440fx data sheet link, Michael S. Tsirkin, 2018/10/24
- [Qemu-devel] [PULL v2 28/28] vhost-scsi: prevent using uninitialized vqs,
Michael S. Tsirkin <=
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Peter Maydell, 2018/10/25
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Michael S. Tsirkin, 2018/10/25
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Singh, Brijesh, 2018/10/26
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Peter Maydell, 2018/10/26
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Michael S. Tsirkin, 2018/10/25
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Michael S. Tsirkin, 2018/10/25
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Peter Maydell, 2018/10/27
- Re: [Qemu-devel] [PULL v2 00/28] pci, pc, virtio: fixes, features, Peter Maydell, 2018/10/30