On Wed, Nov 13, 2013 at 12:20:37PM +0200, Horia Geanta wrote:
> Commit 3e721aeb3df3816e283ab18e327cd4652972e213
> ("crypto: talitos - handle descriptor not found in error path")
> tried to address the fact that CDPR (Current Descriptor Pointer Register)
> is unreliable.
> 
> As it turns out, there are still issues in the function detecting the
> offending descriptor:
> -only 32 bits of the descriptor address are read, however the address is
> 36-bit - since reset_channel() initializes channels with EAE (extended
> address) bit set
> -reading CDPR can return zero in cur_desc; when searching the channel
> fifo for this address, cur_desc == dma_desc (= 0) case might happen,
> leading to an oops when trying to return desc->hdr (desc is zero)
> -read channel's .tail only once; the tail is a moving target; use a
> local variable for the end of search condition
> 
> Signed-off-by: Lei Xu <lei...@freescale.com>
> Signed-off-by: Horia Geanta <horia.gea...@freescale.com>
> Tested-by: Kalyani Chowdhury <kalyani.chowdh...@freescale.com>

Patch applied.
-- 
Email: Herbert Xu <herb...@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to