On 9/26/19 4:42 PM, Erik Skultety wrote:
On Thu, Sep 26, 2019 at 04:25:05PM +0200, Michal Privoznik wrote:
> The private data for video definition is created in
> virDomainVideoDefNew() and we attempt to free it in
> virDomainVideoDefFree(). This seems to work, except
> the free function calls clear function which zeroes
> out the whole structure and thus virObjectUnref()
> which is called on private data does nothing.
>
> 2,568 bytes in 107 blocks are definitely lost in loss record 207 of 213
> at 0x4A35476: calloc (vg_replace_malloc.c:752)
> by 0x50A6048: virAllocVar (viralloc.c:346)
> by 0x513CC5A: virObjectNew (virobject.c:243)
> by 0x4DC1DEE: qemuDomainVideoPrivateNew (qemu_domain.c:1337)
> by 0x51A6BD6: virDomainVideoDefNew (domain_conf.c:2831)
> by 0x51B9F06: virDomainVideoDefParseXML (domain_conf.c:15541)
> by 0x51CB761: virDomainDefParseXML (domain_conf.c:21158)
> by 0x51C5973: virDomainDefParseNode (domain_conf.c:21708)
> by 0x51C583A: virDomainDefParse (domain_conf.c:21663)
> by 0x51C58AE: virDomainDefParseFile (domain_conf.c:21688)
Impressive that we haven't uncovered it sooner.
That's okay, this was introduced only a few days ago in
v5.7.0-212-g3dbf3941ad.
>
> Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
> ---
Reviewed-by: Erik Skultety <eskultet(a)redhat.com>
Thanks, pushed now.
Michal