[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 28/28] vhost-scsi: prevent using uninitialized vqs
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 28/28] vhost-scsi: prevent using uninitialized vqs |
Date: |
Tue, 23 Oct 2018 19:41:34 -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 10/28] x86_iommu/amd: make the address space naming consistent with intel-iommu, (continued)
- [Qemu-devel] [PULL 10/28] x86_iommu/amd: make the address space naming consistent with intel-iommu, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 24/28] pci_bridge: fix typo in comment, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 25/28] i440fx: use ARRAY_SIZE for pam_regions, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 08/28] x86_iommu: move vtd_generate_msi_message in common file, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 11/28] x86_iommu/amd: Prepare for interrupt remap support, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 19/28] hw/pci-host/x86: extend the 64-bit PCI hole relative to the fw-assigned base, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 03/28] intel_iommu: better handling of dmar state switch, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 20/28] tests/bios-tables-test: add 64-bit PCI MMIO aperture round-up test on Q35, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 13/28] i386: acpi: add IVHD device entry for IOAPIC, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 15/28] x86_iommu/amd: Enable Guest virtual APIC support, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 28/28] vhost-scsi: prevent using uninitialized vqs,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 18/28] hw/pci-host/x86: extract get_pci_hole64_start_value() helpers, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 27/28] piix_pci: fix i440fx data sheet link, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 22/28] hw/pci-bridge/ioh3420: Remove unuseful header, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 12/28] x86_iommu/amd: Add interrupt remap support when VAPIC is not enabled, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 23/28] hw/pci: Add missing include, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 14/28] x86_iommu/amd: Add interrupt remap support when VAPIC is enabled, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 21/28] hw/pci-bridge/xio3130: Remove unused functions, Michael S. Tsirkin, 2018/10/23
- [Qemu-devel] [PULL 26/28] piix: use TYPE_FOO constants than string constats, Michael S. Tsirkin, 2018/10/23
- Re: [Qemu-devel] [PULL 00/28] pci, pc, virtio: fixes, features, Peter Maydell, 2018/10/24