crypto: caam - fix inconsistent assoc dma mapping direction
req->assoc is dma mapped BIDIRECTIONAL and unmapped TO_DEVICE. Since it is read-only for the device, use TO_DEVICE both for mapping and unmapping. Cc: <stable@vger.kernel.org> # 3.9, 3.8 Signed-off-by: Horia Geanta <horia.geanta@freescale.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
f722406faa
commit
286233e604
|
@ -1154,7 +1154,7 @@ static struct aead_edesc *aead_edesc_alloc(struct aead_request *req,
|
|||
dst_nents = sg_count(req->dst, req->cryptlen, &dst_chained);
|
||||
|
||||
sgc = dma_map_sg_chained(jrdev, req->assoc, assoc_nents ? : 1,
|
||||
DMA_BIDIRECTIONAL, assoc_chained);
|
||||
DMA_TO_DEVICE, assoc_chained);
|
||||
if (likely(req->src == req->dst)) {
|
||||
sgc = dma_map_sg_chained(jrdev, req->src, src_nents ? : 1,
|
||||
DMA_BIDIRECTIONAL, src_chained);
|
||||
|
@ -1336,7 +1336,7 @@ static struct aead_edesc *aead_giv_edesc_alloc(struct aead_givcrypt_request
|
|||
dst_nents = sg_count(req->dst, req->cryptlen, &dst_chained);
|
||||
|
||||
sgc = dma_map_sg_chained(jrdev, req->assoc, assoc_nents ? : 1,
|
||||
DMA_BIDIRECTIONAL, assoc_chained);
|
||||
DMA_TO_DEVICE, assoc_chained);
|
||||
if (likely(req->src == req->dst)) {
|
||||
sgc = dma_map_sg_chained(jrdev, req->src, src_nents ? : 1,
|
||||
DMA_BIDIRECTIONAL, src_chained);
|
||||
|
|
Loading…
Reference in New Issue