On Mon, Nov 10, 2014 at 4:24 PM, Markus Armbruster <arm...@redhat.com> wrote: > Ming Lei <ming....@canonical.com> writes: > >> The size of each element should be sizeof(VirtIOSCSIVring *). >> >> Signed-off-by: Ming Lei <ming....@canonical.com> >> --- >> hw/scsi/virtio-scsi-dataplane.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/scsi/virtio-scsi-dataplane.c >> b/hw/scsi/virtio-scsi-dataplane.c >> index 855439e..8a7cd9f 100644 >> --- a/hw/scsi/virtio-scsi-dataplane.c >> +++ b/hw/scsi/virtio-scsi-dataplane.c >> @@ -239,7 +239,7 @@ void virtio_scsi_dataplane_start(VirtIOSCSI *s) >> if (!s->event_vring) { >> goto fail_vrings; >> } >> - s->cmd_vrings = g_malloc0(sizeof(VirtIOSCSIVring) * >> vs->conf.num_queues); >> + s->cmd_vrings = g_malloc0(sizeof(VirtIOSCSIVring *) * >> vs->conf.num_queues); >> for (i = 0; i < vs->conf.num_queues; i++) { >> s->cmd_vrings[i] = >> virtio_scsi_vring_init(s, vs->cmd_vqs[i], > > Please use something like > > s->cmd_vrings = g_new0(VirtIOSCSIVring *, vs->conf.num_queues); > > This one crept in since I cleaned up g_malloc() use globally:
Your idea is good, but this one is a fix patch, and I think the g_new() conversion should be done in another patch since the two changes are different logically. Thanks,