* [Qemu-devel] [PATCH] virtio-scsi-dataplane: fix memory leak for VirtIOSCSIVring
@ 2015-03-26 7:42 Ting Wang
2015-03-26 13:23 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Ting Wang @ 2015-03-26 7:42 UTC (permalink / raw)
To: qemu-devel; +Cc: Ting Wang
VirtIOSCSIVring which allocated in virtio_scsi_vring_init
should be free when dataplane has been stopped or failed to start.
Signed-off-by: Ting Wang <kathy.wangting@huawei.com>
---
hw/scsi/virtio-scsi-dataplane.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/hw/scsi/virtio-scsi-dataplane.c b/hw/scsi/virtio-scsi-dataplane.c
index c069cd7..5575648 100644
--- a/hw/scsi/virtio-scsi-dataplane.c
+++ b/hw/scsi/virtio-scsi-dataplane.c
@@ -182,13 +182,19 @@ static void virtio_scsi_vring_teardown(VirtIOSCSI *s)
if (s->ctrl_vring) {
vring_teardown(&s->ctrl_vring->vring, vdev, 0);
+ g_slice_free(VirtIOSCSIVring, s->ctrl_vring);
+ s->ctrl_vring = NULL;
}
if (s->event_vring) {
vring_teardown(&s->event_vring->vring, vdev, 1);
+ g_slice_free(VirtIOSCSIVring, s->event_vring);
+ s->event_vring = NULL;
}
if (s->cmd_vrings) {
for (i = 0; i < vs->conf.num_queues && s->cmd_vrings[i]; i++) {
vring_teardown(&s->cmd_vrings[i]->vring, vdev, 2 + i);
+ g_slice_free(VirtIOSCSIVring, s->cmd_vrings[i]);
+ s->cmd_vrings[i] = NULL;
}
free(s->cmd_vrings);
s->cmd_vrings = NULL;
--
1.8.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] virtio-scsi-dataplane: fix memory leak for VirtIOSCSIVring
2015-03-26 7:42 [Qemu-devel] [PATCH] virtio-scsi-dataplane: fix memory leak for VirtIOSCSIVring Ting Wang
@ 2015-03-26 13:23 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2015-03-26 13:23 UTC (permalink / raw)
To: Ting Wang, qemu-devel
On 26/03/2015 08:42, Ting Wang wrote:
> VirtIOSCSIVring which allocated in virtio_scsi_vring_init
> should be free when dataplane has been stopped or failed to start.
>
> Signed-off-by: Ting Wang <kathy.wangting@huawei.com>
> ---
> hw/scsi/virtio-scsi-dataplane.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/hw/scsi/virtio-scsi-dataplane.c b/hw/scsi/virtio-scsi-dataplane.c
> index c069cd7..5575648 100644
> --- a/hw/scsi/virtio-scsi-dataplane.c
> +++ b/hw/scsi/virtio-scsi-dataplane.c
> @@ -182,13 +182,19 @@ static void virtio_scsi_vring_teardown(VirtIOSCSI *s)
>
> if (s->ctrl_vring) {
> vring_teardown(&s->ctrl_vring->vring, vdev, 0);
> + g_slice_free(VirtIOSCSIVring, s->ctrl_vring);
> + s->ctrl_vring = NULL;
> }
> if (s->event_vring) {
> vring_teardown(&s->event_vring->vring, vdev, 1);
> + g_slice_free(VirtIOSCSIVring, s->event_vring);
> + s->event_vring = NULL;
> }
> if (s->cmd_vrings) {
> for (i = 0; i < vs->conf.num_queues && s->cmd_vrings[i]; i++) {
> vring_teardown(&s->cmd_vrings[i]->vring, vdev, 2 + i);
> + g_slice_free(VirtIOSCSIVring, s->cmd_vrings[i]);
> + s->cmd_vrings[i] = NULL;
> }
> free(s->cmd_vrings);
> s->cmd_vrings = NULL;
>
Applied for 2.3.0-rc2, thanks.
Paolo
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-03-26 13:23 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-26 7:42 [Qemu-devel] [PATCH] virtio-scsi-dataplane: fix memory leak for VirtIOSCSIVring Ting Wang
2015-03-26 13:23 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).