Skip to content

Commit 9dfa009

Browse files
vcgomesgregkh
authored andcommitted
dmaengine: idxd: Fix leaking event log memory
[ Upstream commit ee66bc2 ] During the device remove process, the device is reset, causing the configuration registers to go back to their default state, which is zero. As the driver is checking if the event log support was enabled before deallocating, it will fail if a reset happened before. Do not check if the support was enabled, the check for 'idxd->evl' being valid (only allocated if the HW capability is available) is enough. Fixes: 244da66 ("dmaengine: idxd: setup event log configuration") Reviewed-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com> Link: https://patch.msgid.link/20260121-idxd-fix-flr-on-kernel-queues-v3-v3-10-7ed70658a9d1@intel.com Signed-off-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 308d01e commit 9dfa009

1 file changed

Lines changed: 0 additions & 4 deletions

File tree

drivers/dma/idxd/device.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -833,10 +833,6 @@ static void idxd_device_evl_free(struct idxd_device *idxd)
833833
if (!evl)
834834
return;
835835

836-
gencfg.bits = ioread32(idxd->reg_base + IDXD_GENCFG_OFFSET);
837-
if (!gencfg.evl_en)
838-
return;
839-
840836
mutex_lock(&evl->lock);
841837
gencfg.evl_en = 0;
842838
iowrite32(gencfg.bits, idxd->reg_base + IDXD_GENCFG_OFFSET);

0 commit comments

Comments
 (0)