diff options
| author | 2022-10-24 10:36:11 +0200 | |
|---|---|---|
| committer | 2022-11-08 10:43:56 +0530 | |
| commit | 140fd5e74a1cc7413df88c735fff5ec64d33c1d3 (patch) | |
| tree | 593e0d646927c5a4f89afdfc8ea00bbd176b97dc /drivers/gpu/drm/tiny/ssh:/git@git.zx2c4.com/git: | |
| parent | dmaengine: ti: k3-udma-glue: fix memory leak when register device fail (diff) | |
| download | linux-dev-140fd5e74a1cc7413df88c735fff5ec64d33c1d3.tar.xz linux-dev-140fd5e74a1cc7413df88c735fff5ec64d33c1d3.zip | |
dmaengine: stm32-dma: fix potential race between pause and resume
When disabling dma channel, a TCF flag is set and as TCIE is enabled, an
interrupt is raised.
On a busy system, the interrupt may have latency and the user can ask for
dmaengine_resume while stm32-dma driver has not yet managed the complete
pause (backup of registers to restore state in resume).
To avoid such a case, instead of waiting the interrupt to backup the
registers, do it just after disabling the channel and discard Transfer
Complete interrupt in case the channel is paused.
Fixes: 099a9a94be0e ("dmaengine: stm32-dma: add device_pause/device_resume support")
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Link: https://lore.kernel.org/r/20221024083611.132588-1-amelie.delaunay@foss.st.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/gpu/drm/tiny/ssh:/git@git.zx2c4.com/git:')
0 files changed, 0 insertions, 0 deletions
