Hello.

On 04-08-2013 2:36, Guennadi Liakhovetski wrote:

I'm testing SH-Mobile SDHI driver in DMA mode with  a new DMA controller  using
'bonnie++' and getting DMA error after which the tmio_mmc_dma.c code falls back
to PIO but all commands time out after that.  It turned out that the fallback
code calls tmio_mmc_enable_dma() with RX/TX channels already freed and pointers
to them cleared, so that the function bails out early instead  of clearing the
DMA bit in the CTL_DMA_ENABLE register. The regression was introduced by commit
162f43e31c5a376ec16336e5d0ac973373d54c89 (mmc: tmio: fix a deadlock).
Moving tmio_mmc_enable_dma() calls to the top of the PIO fallback code in
tmio_mmc_start_dma_{rx|tx}() helps.

Signed-off-by: Sergei Shtylyov <[email protected]>
Cc: [email protected] # 3.1+

Acked-by: Guennadi Liakhovetski <[email protected]>

Not sure though how far back in stable this really has to go. We don't
have any real-life problem reports with older kernels, do we?

   If we did, that error would have been fixed earlier, wouldn't it?

I think
approach to which patches should get into stable changed recently.

Haven't heard about that (or seen any change in the policy). The issue with this bug is its catastrophic consequencies: you can hardly ^C or ^Z out of 'bonnie++' when it happens (in fact, you cannot ^C at all). IIRC you can't even kill it from another shell.

Thanks
Guennadi

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to