Re: [PATCH 1/2] qemu_namespace: Don't leak memory in qemuDomainGetPreservedMounts()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 31, 2022 at 16:52:59 +0100, Michal Privoznik wrote:
> The aim of qemuDomainGetPreservedMounts() is to get a list of
> filesystems mounted under /dev and optionally generate a path for
> each one where they are moved temporarily when building the
> namespace. And the function tries to be a bit clever about it.
> For instance, if /dev/shm mount point exists, there's no need to
> consider /dev/shm/a nor /dev/shm/b as preserving just 'top level'
> /dev/shm gives the same result. To achieve this, the function
> iterates over the list of filesystem as returned by
> virFileGetMountSubtree() and removes the nested ones. However, it
> does so in a bit clumsy way: plain VIR_DELETE_ELEMENT() is used
> without freeing the string itself. Therefore, if all three
> aforementioned example paths appeared on the list, /dev/shm/a and
> /dev/shm/b strings would be leaked.
> 
> And when I think about it more, there's no real need to shrink
> the array down (realloc()). It's going to be free()-d when
> returning from the function. Switch to
> VIR_DELETE_ELEMENT_INPLACE() then.
> 
> Fixes: cdd9205dfffa3aaed935446a41f0d2dd1357c268
> Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
> ---
>  src/qemu/qemu_namespace.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Reviewed-by: Peter Krempa <pkrempa@xxxxxxxxxx>




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux