twx-linux/drivers/dma
Vinicius Costa Gomes 2c6a11eaec dmaengine: dmatest: Fix dmatest waiting less when interrupted
[ Upstream commit e87ca16e99118ab4e130a41bdf12abbf6a87656c ]

Change the "wait for operation finish" logic to take interrupts into
account.

When using dmatest with idxd DMA engine, it's possible that during
longer tests, the interrupt notifying the finish of an operation
happens during wait_event_freezable_timeout(), which causes dmatest to
cleanup all the resources, some of which might still be in use.

This fix ensures that the wait logic correctly handles interrupts,
preventing premature cleanup of resources.

Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202502171134.8c403348-lkp@intel.com
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/20250305230007.590178-1-vinicius.gomes@intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-05-02 07:50:55 +02:00
..
bestcomm
dw dmaengine: dw: Select only supported masters for ACPI devices 2025-01-02 10:32:02 +01:00
dw-axi-dmac Avoid hw_desc array overrun in dw-axi-dmac 2024-06-27 13:49:04 +02:00
dw-edma dmaengine: dw-edma: Do not enable watermark interrupts for HDMA 2024-09-04 13:28:25 +02:00
fsl-dpaa2-qdma dmaengine: fsl-dpaa2-qdma: Fix the size of dma pools 2024-02-16 19:10:42 +01:00
hsu
idxd dmaengine: idxd: Fix possible Use-After-Free in irq_process_work_list 2024-06-27 13:49:08 +02:00
ioat dmaengine: ioatdma: Fix missing kmem_cache_destroy() 2024-06-27 13:49:09 +02:00
lgm
mediatek
ppc4xx
ptdma dmaengine: ptdma: use consistent DMA masks 2024-03-06 14:48:40 +00:00
qcom
sf-pdma
sh dmaengine: shdma: increase size of 'dev_id' 2024-03-01 13:34:48 +01:00
ti dmaengine: ti: edma: fix OF node reference leaks in edma_driver 2025-02-08 09:52:28 +01:00
xilinx dma: xilinx_dpdma: Fix locking 2024-05-02 16:32:48 +02:00
acpi-dma.c
altera-msgdma.c dmaengine: altera-msgdma: properly free descriptor in msgdma_free_descriptor 2024-09-08 07:54:46 +02:00
amba-pl08x.c
apple-admac.c dmaengine: apple-admac: Avoid accessing registers in probe 2025-01-02 10:32:03 +01:00
at_hdmac.c
at_xdmac.c dmaengine: at_xdmac: avoid null_prt_deref in at_xdmac_prep_dma_memset 2025-01-02 10:32:03 +01:00
bcm2835-dma.c
bcm-sba-raid.c
dma-axi-dmac.c dmaengine: axi-dmac: fix possible race in remove() 2024-06-21 14:38:41 +02:00
dma-jz4780.c
dmaengine.c dmaengine: fix NULL pointer in channel unregistration function 2024-01-31 16:18:47 -08:00
dmaengine.h
dmatest.c dmaengine: dmatest: Fix dmatest waiting less when interrupted 2025-05-02 07:50:55 +02:00
ep93xx_dma.c
fsl_raid.c
fsl_raid.h
fsl-edma-common.c dmaengine: fsl-edma: change the memory access from local into remote mode in i.MX 8QM 2024-08-11 12:47:17 +02:00
fsl-edma-common.h dmaengine: fsl-edma: implement the cleanup path of fsl_edma3_attach_pd() 2025-01-02 10:32:03 +01:00
fsl-edma-main.c dmaengine: fsl-edma: cleanup chan after dma_async_device_unregister 2025-04-10 14:37:33 +02:00
fsl-qdma.c dmaengine: fsl-qdma: init irq after reg initialization 2024-03-06 14:48:41 +00:00
fsldma.c
fsldma.h
hisi_dma.c
idma64.c dmaengine: idma64: Add check for dma_set_max_seg_size 2024-06-12 11:12:15 +02:00
idma64.h
img-mdc-dma.c
imx-dma.c
imx-sdma.c
k3dma.c
Kconfig dmaengine: fsl-edma: avoid linking both modules 2024-06-27 13:49:09 +02:00
lpc18xx-dmamux.c
Makefile
mcf-edma-main.c
milbeaut-hdmac.c
milbeaut-xdmac.c
mmp_pdma.c
mmp_tdma.c
moxart-dma.c
mpc512x_dma.c
mv_xor_v2.c
mv_xor.c dmaengine: mv_xor: fix child node refcount handling in early exit 2025-01-02 10:32:02 +01:00
mv_xor.h
mxs-dma.c
nbpfaxi.c
of-dma.c
owl-dma.c dmaengine: owl: fix register access functions 2024-05-02 16:32:47 +02:00
pch_dma.c
pl330.c dmaengine: Revert "dmaengine: pl330: issue_pending waits until WFP state" 2024-05-17 12:01:55 +02:00
plx_dma.c
pxa_dma.c dmaengine: pxa_dma: Remove an erroneous BUG_ON() in pxad_free_desc() 2023-11-20 11:59:26 +01:00
sa11x0-dma.c
sprd-dma.c
st_fdma.c
st_fdma.h
ste_dma40_ll.c
ste_dma40_ll.h
ste_dma40.c dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe 2023-10-09 10:56:51 +05:30
ste_dma40.h
stm32-dma.c dmaengine: stm32-dma: avoid bitfield overflow assertion 2023-12-20 17:02:02 +01:00
stm32-dmamux.c
stm32-mdma.c dmaengine: stm32-mdma: correct desc prep when channel running 2023-11-28 17:20:05 +00:00
sun4i-dma.c
sun6i-dma.c
tegra20-apb-dma.c
tegra186-gpc-dma.c dmaengine: tegra: Return correct DMA status when paused 2025-01-02 10:32:02 +01:00
tegra210-adma.c
timb_dma.c
TODO
txx9dmac.c
txx9dmac.h
uniphier-mdmac.c
uniphier-xdmac.c
virt-dma.c
virt-dma.h
xgene-dma.c