Skip to content

Commit ee66bc2

Browse files
vcgomesvinodkoul
authored andcommitted
dmaengine: idxd: Fix leaking event log memory
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>
1 parent c311f5e commit ee66bc2

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
@@ -834,10 +834,6 @@ static void idxd_device_evl_free(struct idxd_device *idxd)
834834
if (!evl)
835835
return;
836836

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

0 commit comments

Comments
 (0)