summaryrefslogtreecommitdiff
path: root/tools/lib/python/kdoc/python_version.py
diff options
context:
space:
mode:
authorLinus Walleij <linusw@kernel.org>2026-09-27 11:03:17 +0200
committerVinod Koul <vkoul@kernel.org>2026-10-05 17:37:45 +0200
commit8175ead5727173d4b96d1e830e696765d75ade71 (patch)
tree6ad20e364d8758391166a90d91eaa27f7a642dbe /tools/lib/python/kdoc/python_version.py
parentdb28400d92cd97005065dad230b8a5d72ab121cb (diff)
dmaengine: ste_dma40: Fix failed start cleanup
If d40_start() fails after a queued descriptor has been moved to the active list, d40_queue_start() currently returns NULL without unwinding the transfer state or clearing the channel busy flag. Fix this pre-existing error path by completing the descriptor through the normal tasklet path, clearing the busy flag, balancing the runtime PM reference and returning an error pointer to distinguish the failure from the no-work case. Do not free the descriptor directly, since it has already been submitted and has a DMA cookie. When starting the next queued transfer from the completion handler, put the completed descriptor on the done list first. This preserves FIFO completion order if the new transfer fails to start and prevents the completed cookie from moving backwards. Use done-list membership rather than the cyclic flag to identify terminal descriptors in the tasklet. A cyclic descriptor that failed to start is then completed and removed instead of remaining permanently at the head of the done list. Fixes: 7d83a854a1a4 ("dma40: remove "hardware link with previous jobs" code") Reported-by: sashiko-bot@kernel.org Closes: https://lore.kernel.org/dmaengine/20260618051539.15E201F000E9@smtp.kernel.org/ Reviewed-by: Frank Li <Frank.Li@nxp.com> Assisted-by: LLM Link: https://lore.kernel.org/dmaengine/20260618051539.15E201F000E9@smtp.kernel.org/ Signed-off-by: Linus Walleij <linusw@kernel.org> Link: https://patch.msgid.link/20260927-dma40-fixes-v7-4-89f595e8851d@kernel.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc/python_version.py')
0 files changed, 0 insertions, 0 deletions