linux/drivers/crypto/caam
Steve Cornelius 412c98c1be crypto: caam - fix RNG buffer cache alignment
The hwrng output buffers (2) are cast inside of a a struct (caam_rng_ctx)
allocated in one DMA-tagged region. While the kernel's heap allocator
should place the overall struct on a cacheline aligned boundary, the 2
buffers contained within may not necessarily align. Consenquently, the ends
of unaligned buffers may not fully flush, and if so, stale data will be left
behind, resulting in small repeating patterns.

This fix aligns the buffers inside the struct.

Note that not all of the data inside caam_rng_ctx necessarily needs to be
DMA-tagged, only the buffers themselves require this. However, a fix would
incur the expense of error-handling bloat in the case of allocation failure.

Cc: stable@vger.kernel.org
Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com>
Signed-off-by: Victoria Milhoan <vicki.milhoan@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-06-16 14:20:38 +08:00
..
caamalg.c crypto: caam - remove dead code 2015-01-26 11:34:23 +11:00
caamhash.c crypto: caam - improve initalization for context state saves 2015-06-16 14:20:38 +08:00
caamrng.c crypto: caam - fix RNG buffer cache alignment 2015-06-16 14:20:38 +08:00
compat.h crypto: caam - add support for rfc3686(ctr(aes)) 2014-11-06 23:15:04 +08:00
ctrl.c crypto: caam - remove unused local variable 2015-01-26 11:34:24 +11:00
ctrl.h crypto: caam - fix ERA retrieval function 2014-02-09 09:59:27 +08:00
desc_constr.h crypto: caam - add support for ctr(aes) 2014-11-06 23:15:04 +08:00
desc.h crypto: caam - remove duplicate FIFOST_CONT_MASK define 2014-06-20 21:27:57 +08:00
error.c crypto: caam - don't emit ICV check failures to dmesg 2015-01-26 11:34:23 +11:00
error.h crypto: caam - Contain caam_jr_strstatus() ugliness 2014-05-08 21:58:06 +08:00
intern.h crypto: caam - Dynamic allocation of addresses for various memory blocks in CAAM. 2014-09-15 19:44:11 +08:00
jr.c crypto: caam - fix resource clean-up on error path for caam_jr_init 2015-01-26 11:34:25 +11:00
jr.h crypto: caam - Add API's to allocate/free Job Rings 2013-10-30 12:02:57 +08:00
Kconfig crypto: caam - Add Platform driver for Job Ring 2013-10-30 12:02:57 +08:00
key_gen.c crypto: caam - fix missing dma unmap on error path 2014-11-06 23:10:20 +08:00
key_gen.h crypto: caam - change key gen functions to return signed int 2013-04-25 21:01:43 +08:00
Makefile crypto: caam - Add Platform driver for Job Ring 2013-10-30 12:02:57 +08:00
pdb.h crypto: caam - Add define for Adjust Output Frame Length in PDB 2013-05-28 15:37:08 +08:00
regs.h crypto: caam - Dynamic allocation of addresses for various memory blocks in CAAM. 2014-09-15 19:44:11 +08:00
sg_sw_sec4.h crypto: replace scatterwalk_sg_next with sg_next 2015-01-26 11:34:22 +11:00