On Sun, Jun 14, 2020 at 4:01 PM Yunjian Wang <yunjian.wang@foxmail.com> wrote:
>
> The 'vfio_res' is not freed when unmapping resource by primary process.
> This leads to memory leak.
>
> Fixes: ab53203e194b ("vfio: enable unmapping resource for secondary")
> Cc: stable@dpdk.org
>
> Signed-off-by: Yunjian Wang <yunjian.wang@foxmail.com>
> ---
> drivers/bus/pci/linux/pci_vfio.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/bus/pci/linux/pci_vfio.c b/drivers/bus/pci/linux/pci_vfio.c
> index 64cd84a68..bf4c3c1fa 100644
> --- a/drivers/bus/pci/linux/pci_vfio.c
> +++ b/drivers/bus/pci/linux/pci_vfio.c
> @@ -966,6 +966,7 @@ pci_vfio_unmap_resource_primary(struct rte_pci_device *dev)
> }
>
> TAILQ_REMOVE(vfio_res_list, vfio_res, next);
> + rte_free(vfio_res);
>
> return 0;
> }
> --
> 2.18.1
>
Since this element is removed from the shared list, I guess no
secondary is using it anymore.
Reviewed-by: David Marchand <david.marchand@redhat.com>
--
David Marchand