Thread (11 messages) 11 messages, 3 authors, 2021-03-04
STALE1973d
Revisions (2)
  1. v1 current
  2. v2 [diff vs current]

[PATCH 2/4] crypto: cavium - Fix the parameter of dma_unmap_sg()

From: chenxiang <hidden>
Date: 2021-02-09 07:04:45
Subsystem: crypto api, the rest · Maintainers: Herbert Xu, "David S. Miller", Linus Torvalds

From: Xiang Chen <redacted>

For function dma_unmap_sg(), the <nents> parameter should be number of
elements in the scatterlist prior to the mapping, not after the mapping.
So fix this usage.

Signed-off-by: Xiang Chen <redacted>
---
 drivers/crypto/cavium/nitrox/nitrox_reqmgr.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c b/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c
index 53ef067..1263194 100644
--- a/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c
+++ b/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c
@@ -170,7 +170,7 @@ static int dma_map_inbufs(struct nitrox_softreq *sr,
 		sr->in.total_bytes += sg_dma_len(sg);
 
 	sr->in.sg = req->src;
-	sr->in.sgmap_cnt = nents;
+	sr->in.sgmap_cnt = sg_nents(req->src);
 	ret = create_sg_component(sr, &sr->in, sr->in.sgmap_cnt);
 	if (ret)
 		goto incomp_err;
@@ -178,7 +178,7 @@ static int dma_map_inbufs(struct nitrox_softreq *sr,
 	return 0;
 
 incomp_err:
-	dma_unmap_sg(dev, req->src, nents, DMA_BIDIRECTIONAL);
+	dma_unmap_sg(dev, req->src, sg_nents(req->src), DMA_BIDIRECTIONAL);
 	sr->in.sgmap_cnt = 0;
 	return ret;
 }
@@ -195,7 +195,7 @@ static int dma_map_outbufs(struct nitrox_softreq *sr,
 		return -EINVAL;
 
 	sr->out.sg = req->dst;
-	sr->out.sgmap_cnt = nents;
+	sr->out.sgmap_cnt = sg_nents(req->dst);
 	ret = create_sg_component(sr, &sr->out, sr->out.sgmap_cnt);
 	if (ret)
 		goto outcomp_map_err;
@@ -203,7 +203,7 @@ static int dma_map_outbufs(struct nitrox_softreq *sr,
 	return 0;
 
 outcomp_map_err:
-	dma_unmap_sg(dev, req->dst, nents, DMA_BIDIRECTIONAL);
+	dma_unmap_sg(dev, req->dst, sg_nents(req->dst), DMA_BIDIRECTIONAL);
 	sr->out.sgmap_cnt = 0;
 	sr->out.sg = NULL;
 	return ret;
-- 
2.8.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help