* [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str
@ 2015-12-23 7:43 Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak Li Zhijian
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Li Zhijian @ 2015-12-23 7:43 UTC (permalink / raw)
To: qemu-devel; +Cc: Li Zhijian
free the resources allocted by this setter at the instance finalization.
Li Zhijian (4):
net/filter: fix nf->netdev_id leak
net/dump: fix nfds->filename leak
backends/hostmem-file: fix fb->mem_path leak
hw/ppc/spapr: fix spapr->kvm_type leak
backends/hostmem-file.c | 8 ++++++++
hw/ppc/spapr.c | 8 ++++++++
net/dump.c | 8 ++++++++
net/filter.c | 1 +
4 files changed, 25 insertions(+)
--
2.5.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak
2015-12-23 7:43 [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str Li Zhijian
@ 2015-12-23 7:43 ` Li Zhijian
2015-12-24 3:24 ` Jason Wang
2015-12-23 7:43 ` [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak Li Zhijian
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Li Zhijian @ 2015-12-23 7:43 UTC (permalink / raw)
To: qemu-devel; +Cc: Jason Wang, Li Zhijian
Cc: Jason Wang <jasowang@redhat.com>
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
---
net/filter.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/filter.c b/net/filter.c
index 1365bad..f777ba2 100644
--- a/net/filter.c
+++ b/net/filter.c
@@ -204,6 +204,7 @@ static void netfilter_finalize(Object *obj)
if (nf->netdev && !QTAILQ_EMPTY(&nf->netdev->filters)) {
QTAILQ_REMOVE(&nf->netdev->filters, nf, next);
}
+ g_free(nf->netdev_id);
}
static void netfilter_class_init(ObjectClass *oc, void *data)
--
2.5.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak
2015-12-23 7:43 [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak Li Zhijian
@ 2015-12-23 7:43 ` Li Zhijian
2015-12-24 3:25 ` Jason Wang
2015-12-23 7:43 ` [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak Li Zhijian
3 siblings, 1 reply; 9+ messages in thread
From: Li Zhijian @ 2015-12-23 7:43 UTC (permalink / raw)
To: qemu-devel; +Cc: Jason Wang, Li Zhijian
Cc: Jason Wang <jasowang@redhat.com>
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
---
net/dump.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/net/dump.c b/net/dump.c
index ce16a4b..347b5ca 100644
--- a/net/dump.c
+++ b/net/dump.c
@@ -329,6 +329,13 @@ static void filter_dump_instance_init(Object *obj)
file_dump_set_filename, NULL);
}
+static void filter_dump_instance_finalize(Object *obj)
+{
+ NetFilterDumpState *nfds = FILTER_DUMP(obj);
+
+ g_free(nfds->filename);
+}
+
static void filter_dump_class_init(ObjectClass *oc, void *data)
{
NetFilterClass *nfc = NETFILTER_CLASS(oc);
@@ -343,6 +350,7 @@ static const TypeInfo filter_dump_info = {
.parent = TYPE_NETFILTER,
.class_init = filter_dump_class_init,
.instance_init = filter_dump_instance_init,
+ .instance_finalize = filter_dump_instance_finalize,
.instance_size = sizeof(NetFilterDumpState),
};
--
2.5.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak
2015-12-23 7:43 [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak Li Zhijian
@ 2015-12-23 7:43 ` Li Zhijian
2015-12-23 13:32 ` Igor Mammedov
2015-12-23 7:43 ` [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak Li Zhijian
3 siblings, 1 reply; 9+ messages in thread
From: Li Zhijian @ 2015-12-23 7:43 UTC (permalink / raw)
To: qemu-devel; +Cc: Li Zhijian
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
---
backends/hostmem-file.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/backends/hostmem-file.c b/backends/hostmem-file.c
index e9b6d21..5a73fd0 100644
--- a/backends/hostmem-file.c
+++ b/backends/hostmem-file.c
@@ -116,11 +116,19 @@ file_backend_instance_init(Object *o)
set_mem_path, NULL);
}
+static void file_backend_instance_finalize(Object *o)
+{
+ HostMemoryBackendFile *fb = MEMORY_BACKEND_FILE(o);
+
+ g_free(fb->mem_path);
+}
+
static const TypeInfo file_backend_info = {
.name = TYPE_MEMORY_BACKEND_FILE,
.parent = TYPE_MEMORY_BACKEND,
.class_init = file_backend_class_init,
.instance_init = file_backend_instance_init,
+ .instance_finalize = file_backend_instance_finalize,
.instance_size = sizeof(HostMemoryBackendFile),
};
--
2.5.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak
2015-12-23 7:43 [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str Li Zhijian
` (2 preceding siblings ...)
2015-12-23 7:43 ` [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak Li Zhijian
@ 2015-12-23 7:43 ` Li Zhijian
2015-12-24 8:36 ` David Gibson
3 siblings, 1 reply; 9+ messages in thread
From: Li Zhijian @ 2015-12-23 7:43 UTC (permalink / raw)
To: qemu-devel; +Cc: qemu-ppc, Alexander Graf, Li Zhijian, David Gibson
Cc: David Gibson <david@gibson.dropbear.id.au>
Cc: Alexander Graf <agraf@suse.de>
Cc: qemu-ppc@nongnu.org
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
---
hw/ppc/spapr.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 6bfb908..65b2d61 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -2101,6 +2101,13 @@ static void spapr_machine_initfn(Object *obj)
NULL);
}
+static char *spapr_machine_finalizefn(Object *obj)
+{
+ sPAPRMachineState *spapr = SPAPR_MACHINE(obj);
+
+ g_free(spapr->kvm_type);
+}
+
static void ppc_cpu_do_nmi_on_cpu(void *arg)
{
CPUState *cs = arg;
@@ -2288,6 +2295,7 @@ static const TypeInfo spapr_machine_info = {
.abstract = true,
.instance_size = sizeof(sPAPRMachineState),
.instance_init = spapr_machine_initfn,
+ .instance_finalize = spapr_machine_finalizefn,
.class_size = sizeof(sPAPRMachineClass),
.class_init = spapr_machine_class_init,
.interfaces = (InterfaceInfo[]) {
--
2.5.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak
2015-12-23 7:43 ` [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak Li Zhijian
@ 2015-12-23 13:32 ` Igor Mammedov
0 siblings, 0 replies; 9+ messages in thread
From: Igor Mammedov @ 2015-12-23 13:32 UTC (permalink / raw)
To: Li Zhijian; +Cc: qemu-devel
On Wed, 23 Dec 2015 15:43:20 +0800
Li Zhijian <lizhijian@cn.fujitsu.com> wrote:
> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
> ---
> backends/hostmem-file.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/backends/hostmem-file.c b/backends/hostmem-file.c
> index e9b6d21..5a73fd0 100644
> --- a/backends/hostmem-file.c
> +++ b/backends/hostmem-file.c
> @@ -116,11 +116,19 @@ file_backend_instance_init(Object *o)
> set_mem_path, NULL);
> }
>
> +static void file_backend_instance_finalize(Object *o)
> +{
> + HostMemoryBackendFile *fb = MEMORY_BACKEND_FILE(o);
> +
> + g_free(fb->mem_path);
> +}
> +
> static const TypeInfo file_backend_info = {
> .name = TYPE_MEMORY_BACKEND_FILE,
> .parent = TYPE_MEMORY_BACKEND,
> .class_init = file_backend_class_init,
> .instance_init = file_backend_instance_init,
> + .instance_finalize = file_backend_instance_finalize,
> .instance_size = sizeof(HostMemoryBackendFile),
> };
>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak
2015-12-23 7:43 ` [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak Li Zhijian
@ 2015-12-24 3:24 ` Jason Wang
0 siblings, 0 replies; 9+ messages in thread
From: Jason Wang @ 2015-12-24 3:24 UTC (permalink / raw)
To: Li Zhijian, qemu-devel
On 12/23/2015 03:43 PM, Li Zhijian wrote:
> Cc: Jason Wang <jasowang@redhat.com>
> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
> ---
> net/filter.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/net/filter.c b/net/filter.c
> index 1365bad..f777ba2 100644
> --- a/net/filter.c
> +++ b/net/filter.c
> @@ -204,6 +204,7 @@ static void netfilter_finalize(Object *obj)
> if (nf->netdev && !QTAILQ_EMPTY(&nf->netdev->filters)) {
> QTAILQ_REMOVE(&nf->netdev->filters, nf, next);
> }
> + g_free(nf->netdev_id);
> }
>
> static void netfilter_class_init(ObjectClass *oc, void *data)
Apply to my -net.
Thanks
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak
2015-12-23 7:43 ` [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak Li Zhijian
@ 2015-12-24 3:25 ` Jason Wang
0 siblings, 0 replies; 9+ messages in thread
From: Jason Wang @ 2015-12-24 3:25 UTC (permalink / raw)
To: Li Zhijian, qemu-devel
On 12/23/2015 03:43 PM, Li Zhijian wrote:
> Cc: Jason Wang <jasowang@redhat.com>
> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
> ---
> net/dump.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/net/dump.c b/net/dump.c
> index ce16a4b..347b5ca 100644
> --- a/net/dump.c
> +++ b/net/dump.c
> @@ -329,6 +329,13 @@ static void filter_dump_instance_init(Object *obj)
> file_dump_set_filename, NULL);
> }
>
> +static void filter_dump_instance_finalize(Object *obj)
> +{
> + NetFilterDumpState *nfds = FILTER_DUMP(obj);
> +
> + g_free(nfds->filename);
> +}
> +
> static void filter_dump_class_init(ObjectClass *oc, void *data)
> {
> NetFilterClass *nfc = NETFILTER_CLASS(oc);
> @@ -343,6 +350,7 @@ static const TypeInfo filter_dump_info = {
> .parent = TYPE_NETFILTER,
> .class_init = filter_dump_class_init,
> .instance_init = filter_dump_instance_init,
> + .instance_finalize = filter_dump_instance_finalize,
> .instance_size = sizeof(NetFilterDumpState),
> };
>
Applied to my -net.
Thanks
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak
2015-12-23 7:43 ` [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak Li Zhijian
@ 2015-12-24 8:36 ` David Gibson
0 siblings, 0 replies; 9+ messages in thread
From: David Gibson @ 2015-12-24 8:36 UTC (permalink / raw)
To: Li Zhijian; +Cc: qemu-ppc, qemu-devel, Alexander Graf
[-- Attachment #1: Type: text/plain, Size: 1604 bytes --]
On Wed, Dec 23, 2015 at 03:43:21PM +0800, Li Zhijian wrote:
> Cc: David Gibson <david@gibson.dropbear.id.au>
> Cc: Alexander Graf <agraf@suse.de>
> Cc: qemu-ppc@nongnu.org
> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
Since the machine has a lifetime basically equal to the runtime of
qemu, it's not a terribly important leak. Still, might as well get it
right.
Merged into my ppc-for-2.6 branch.
> ---
> hw/ppc/spapr.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 6bfb908..65b2d61 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -2101,6 +2101,13 @@ static void spapr_machine_initfn(Object *obj)
> NULL);
> }
>
> +static char *spapr_machine_finalizefn(Object *obj)
> +{
> + sPAPRMachineState *spapr = SPAPR_MACHINE(obj);
> +
> + g_free(spapr->kvm_type);
> +}
> +
> static void ppc_cpu_do_nmi_on_cpu(void *arg)
> {
> CPUState *cs = arg;
> @@ -2288,6 +2295,7 @@ static const TypeInfo spapr_machine_info = {
> .abstract = true,
> .instance_size = sizeof(sPAPRMachineState),
> .instance_init = spapr_machine_initfn,
> + .instance_finalize = spapr_machine_finalizefn,
> .class_size = sizeof(sPAPRMachineClass),
> .class_init = spapr_machine_class_init,
> .interfaces = (InterfaceInfo[]) {
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2015-12-24 10:37 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-23 7:43 [Qemu-devel] [PATCH 0/4] fix memory leak which allocted by the setter of object_property_add_str Li Zhijian
2015-12-23 7:43 ` [Qemu-devel] [PATCH 1/4] net/filter: fix nf->netdev_id leak Li Zhijian
2015-12-24 3:24 ` Jason Wang
2015-12-23 7:43 ` [Qemu-devel] [PATCH 2/4] net/dump: fix nfds->filename leak Li Zhijian
2015-12-24 3:25 ` Jason Wang
2015-12-23 7:43 ` [Qemu-devel] [PATCH 3/4] backends/hostmem-file: fix fb->mem_path leak Li Zhijian
2015-12-23 13:32 ` Igor Mammedov
2015-12-23 7:43 ` [Qemu-devel] [PATCH 4/4] hw/ppc/spapr: fix spapr->kvm_type leak Li Zhijian
2015-12-24 8:36 ` David Gibson
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).