[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 33/33] vhost-scsi: prevent using uninitialized vqs
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 33/33] vhost-scsi: prevent using uninitialized vqs |
Date: |
Mon, 5 Nov 2018 13:17:23 -0500 |
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 24/33] bios-tables-test: prepare expected files for mmio64, (continued)
- [Qemu-devel] [PULL 24/33] bios-tables-test: prepare expected files for mmio64, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 26/33] hw/pci-bridge/xio3130: Remove unused functions, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 25/33] tests/bios-tables-test: add 64-bit PCI MMIO aperture round-up test on Q35, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 28/33] hw/pci: Add missing include, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 22/33] hw/pci-host/x86: extract get_pci_hole64_start_value() helpers, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 27/33] hw/pci-bridge/ioh3420: Remove unuseful header, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 29/33] pci_bridge: fix typo in comment, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 30/33] i440fx: use ARRAY_SIZE for pam_regions, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 31/33] piix: use TYPE_FOO constants than string constats, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 32/33] piix_pci: fix i440fx data sheet link, Michael S. Tsirkin, 2018/11/05
- [Qemu-devel] [PULL 33/33] vhost-scsi: prevent using uninitialized vqs,
Michael S. Tsirkin <=
- Re: [Qemu-devel] [PULL 00/33] pci, pc, virtio: fixes, features, Thomas Huth, 2018/11/06
- Re: [Qemu-devel] [PULL 00/33] pci, pc, virtio: fixes, features, Michael S. Tsirkin, 2018/11/06
- Re: [Qemu-devel] [PULL 00/33] pci, pc, virtio: fixes, features, Peter Maydell, 2018/11/06
- Re: [Qemu-devel] [PULL 00/33] pci, pc, virtio: fixes, features, Peter Maydell, 2018/11/06
- Re: [Qemu-devel] [PULL 00/33] pci, pc, virtio: fixes, features, Laszlo Ersek, 2018/11/06