[PATCH] dmaengine: pxa_dma: fix hotchain corner case

Vinod Koul vinod.koul at intel.com
Thu Aug 18 23:32:24 PDT 2016


On Sun, Aug 07, 2016 at 09:01:48PM +0200, Robert Jarzmik wrote:
> In the case where a descriptor is chained on a running channel, and as
> explained in the comment in the code 10 lines above, the success of the
> chaining is ensured either if :
>  - the DMA is still running
>  - or if the chained transfer is completed
> 
> Unfortunately the transfer completness test was done on the descriptor
> to which the transfer was chained, and not the transfer being chained at
> the end, ie. hot-chained.
> 
> This corner case is extremely hard to trigger, as usually the DMA chain
> is still running, and the first case takes care of returning success of
> the hot-chaining. It was seen by hot-chaining several "small transfers"
> to a running "big transfer", not in a real-life usecase but by testing
> the robustness of the driver.

Applied, thanks

-- 
~Vinod



More information about the linux-arm-kernel mailing list