[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V3 15/44] virtio-scsi: allocate cmd_vqs array separa
From: |
fred . konrad |
Subject: |
[Qemu-devel] [PATCH V3 15/44] virtio-scsi: allocate cmd_vqs array separately. |
Date: |
Tue, 15 Jan 2013 15:09:29 +0100 |
From: KONRAD Frederic <address@hidden>
Allocate/Free the cmd_vqs array separately to have a fixed size device.
Signed-off-by: KONRAD Frederic <address@hidden>
---
hw/virtio-scsi.c | 6 +++---
hw/virtio-scsi.h | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/virtio-scsi.c b/hw/virtio-scsi.c
index 29eb395..cc38d0b 100644
--- a/hw/virtio-scsi.c
+++ b/hw/virtio-scsi.c
@@ -689,12 +689,12 @@ VirtIODevice *virtio_scsi_init(DeviceState *dev,
VirtIOSCSIConf *proxyconf)
{
VirtIOSCSI *s;
static int virtio_scsi_id;
- size_t sz;
int i;
- sz = sizeof(VirtIOSCSI) + proxyconf->num_queues * sizeof(VirtQueue *);
s = (VirtIOSCSI *)virtio_common_init("virtio-scsi", VIRTIO_ID_SCSI,
- sizeof(VirtIOSCSIConfig), sz);
+ sizeof(VirtIOSCSIConfig),
+ sizeof(VirtIOSCSI));
+ s->cmd_vqs = g_malloc0(proxyconf->num_queues * sizeof(VirtQueue *));
s->qdev = dev;
memcpy(&(s->conf), proxyconf, sizeof(struct VirtIOSCSIConf));
diff --git a/hw/virtio-scsi.h b/hw/virtio-scsi.h
index 7878638..962e793 100644
--- a/hw/virtio-scsi.h
+++ b/hw/virtio-scsi.h
@@ -44,7 +44,7 @@ typedef struct VirtIOSCSI {
bool events_dropped;
VirtQueue *ctrl_vq;
VirtQueue *event_vq;
- VirtQueue *cmd_vqs[0];
+ VirtQueue **cmd_vqs;
} VirtIOSCSI;
#define DEFINE_VIRTIO_SCSI_PROPERTIES(_state, _features_field, _conf_field) \
--
1.7.11.7
- [Qemu-devel] [PATCH V3 01/44] virtio: make virtio device's structures public., (continued)
- [Qemu-devel] [PATCH V3 01/44] virtio: make virtio device's structures public., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 05/44] virtio-blk-s390: switch to the new API., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 02/44] virtio-blk: don't use pointer for configuration., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 03/44] virtio-blk: add the virtio-blk device., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 04/44] virtio-blk-pci: switch to new API., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 07/44] virtio-blk: cleanup: remove qdev field., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 12/44] virtio-net: cleanup: init and exit function., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 11/44] virtio-net: cleanup: use QOM cast., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 09/44] virtio-net-pci: switch to the new API., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 08/44] virtio-net: add the virtio-net device., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 15/44] virtio-scsi: allocate cmd_vqs array separately.,
fred . konrad <=
- [Qemu-devel] [PATCH V3 10/44] virtio-net-s390: switch to the new API., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 44/44] virtio-9p: cleanup: QOM casts., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 14/44] virtio-scsi: don't use pointer for configuration., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 39/44] virtio-serial: cleanup: use QOM casts., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 33/44] virtio-rng.c: cleanup: remove qdev field., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 32/44] virtio-rng.c: cleanup: init and exit functions., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 41/44] virtio-9p: add the virtio-9p device., fred . konrad, 2013/01/15
- [Qemu-devel] [PATCH V3 18/44] virtio-scsi-pci: switch to new API., fred . konrad, 2013/01/15