Commit d5449ff1 authored by Shuai Xue's avatar Shuai Xue Committed by Vinod Koul
Browse files

dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call



The remove call stack is missing idxd cleanup to free bitmap, ida and
the idxd_device. Call idxd_free() helper routines to make sure we exit
gracefully.

Fixes: bfe1d560 ("dmaengine: idxd: Init and probe for Intel data accelerators")
Cc: stable@vger.kernel.org
Suggested-by: default avatarVinicius Costa Gomes <vinicius.gomes@intel.com>
Signed-off-by: default avatarShuai Xue <xueshuai@linux.alibaba.com>
Reviewed-by: default avatarFenghua Yu <fenghuay@nvidia.com>
Reviewed-by: default avatarDave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/20250404120217.48772-9-xueshuai@linux.alibaba.com


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 90022b3a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1335,6 +1335,7 @@ static void idxd_remove(struct pci_dev *pdev)
	destroy_workqueue(idxd->wq);
	perfmon_pmu_remove(idxd);
	put_device(idxd_confdev(idxd));
	idxd_free(idxd);
}

static struct pci_driver idxd_pci_driver = {