On Mon, May 11 2026, Thomas Huth <thuth@redhat.com> wrote:
> From: Thomas Huth <thuth@redhat.com>
>
> The elements that get removed with QTAILQ_REMOVE are never referenced
> afterwards anymore, so the corresponding memory should get freed.
>
> Fixes: 37fa32de70 ("s390x/pci: Honor DMA limits set by vfio")
> Reviewed-by: Farhan Ali <alifm@linux.ibm.com>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> v2: Drop change to hw/s390x/s390-pci-bus.c (since it needs other rework)
>
> hw/s390x/s390-pci-vfio.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
> index 7c754b656da..db6de00bd28 100644
> --- a/hw/s390x/s390-pci-vfio.c
> +++ b/hw/s390x/s390-pci-vfio.c
> @@ -101,6 +101,7 @@ void s390_pci_end_dma_count(S390pciState *s, S390PCIDMACount *cnt)
> cnt->users--;
> if (cnt->users == 0) {
> QTAILQ_REMOVE(&s->zpci_dma_limit, cnt, link);
> + g_free(cnt);
> }
> }
>
Thanks, queued to s390-next.