RE: [PATCH 1/1] iommu: Fix potential memory leak in iopf_queue_remove_device()
From: Tian, Kevin
Date: Fri Jan 17 2025 - 01:22:12 EST
> From: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
> Sent: Friday, January 17, 2025 1:58 PM
>
> The iopf_queue_remove_device() helper removes a device from the per-
> iommu
> iopf queue when PRI is disabled on the device. It responds to all
> outstanding iopf's with an IOMMU_PAGE_RESP_INVALID code and detaches
> the
> device from the queue.
>
> However, it fails to release the group structure that represents a group
> of iopf's awaiting for a response after responding to the hardware. This
> can cause a memory leak if iopf_queue_remove_device() is called with
> pending iopf's.
>
> Fix it by calling iopf_free_group() after the iopf group is responded.
>
> Fixes: 199112327135 ("iommu: Track iopf group instead of last fault")
> Cc: stable@xxxxxxxxxxxxxxx
> Suggested-by: Kevin Tian <kevin.tian@xxxxxxxxx>
> Signed-off-by: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx>