61 lines
2.0 KiB
Diff
61 lines
2.0 KiB
Diff
From e9380df03375e871de088ad5aee8fd19d6ad3794 Mon Sep 17 00:00:00 2001
|
|
From: Laurent Vivier <lvivier@redhat.com>
|
|
Date: Thu, 25 Feb 2021 23:14:32 -0500
|
|
Subject: [PATCH 35/54] failover: Remove memory leak
|
|
|
|
RH-Author: Laurent Vivier <lvivier@redhat.com>
|
|
Message-id: <20210225231447.2187738-13-lvivier@redhat.com>
|
|
Patchwork-id: 101261
|
|
O-Subject: [RHEL-AV-8.4.0 qemu-kvm PATCH v2 12/27] failover: Remove memory leak
|
|
Bugzilla: 1819991
|
|
RH-Acked-by: Juan Quintela <quintela@redhat.com>
|
|
RH-Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
|
RH-Acked-by: Jens Freimann <jfreimann@redhat.com>
|
|
RH-Acked-by: Michael S. Tsirkin <mst@redhat.com>
|
|
|
|
From: Juan Quintela <quintela@redhat.com>
|
|
|
|
BZ: https://bugzilla.redhat.com/1819991
|
|
BRANCH: rhel-av-8.4.0
|
|
UPSTREAM: Merged
|
|
|
|
Two things, at this point:
|
|
|
|
* n->primary_device_id has to be set, otherwise
|
|
virtio_net_find_primary don't work. So we have a leak here.
|
|
|
|
* it has to be exactly the same that prim_dev->id because what
|
|
qdev_find_recursive() does is just compare this two values.
|
|
|
|
So remove the unneeded assignment and leaky bits.
|
|
|
|
Signed-off-by: Juan Quintela <quintela@redhat.com>
|
|
Message-Id: <20201118083748.1328-14-quintela@redhat.com>
|
|
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
|
(cherry picked from commit 7b3dc2f8c0b817bbe78ba347130b3c99fe2c4470)
|
|
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
|
|
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
|
---
|
|
hw/net/virtio-net.c | 4 +---
|
|
1 file changed, 1 insertion(+), 3 deletions(-)
|
|
|
|
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
|
|
index 6e5a56a230..70fa372c08 100644
|
|
--- a/hw/net/virtio-net.c
|
|
+++ b/hw/net/virtio-net.c
|
|
@@ -854,9 +854,7 @@ static DeviceState *virtio_connect_failover_devices(VirtIONet *n, Error **errp)
|
|
Error *err = NULL;
|
|
|
|
prim_dev = virtio_net_find_primary(n, &err);
|
|
- if (prim_dev) {
|
|
- n->primary_device_id = g_strdup(prim_dev->id);
|
|
- } else {
|
|
+ if (!prim_dev) {
|
|
error_propagate(errp, err);
|
|
}
|
|
|
|
--
|
|
2.27.0
|
|
|