Thread (10 messages) 10 messages, 2 authors, 2015-03-03

Re: [PATCH 3/4] crypto: caamhash: add two missed dma_mapping_error

flat view

From: Horia Geantă <hidden>
Date: 2015-03-02 11:54:04
Also in: lkml

On 2/28/2015 8:00 AM, yanjiang.jin@windriver.com wrote:
quoted hunk ↗ jump to hunk
From: Yanjiang Jin <redacted>

Add two missed dma_mapping_error() after dma_map_single().

Signed-off-by: Yanjiang Jin <redacted>
---
 drivers/crypto/caam/caamhash.c | 8 ++++++++
 1 file changed, 8 insertions(+)
diff --git a/drivers/crypto/caam/caamhash.c b/drivers/crypto/caam/caamhash.c
index f347ab7..f6ad322 100644
--- a/drivers/crypto/caam/caamhash.c
+++ b/drivers/crypto/caam/caamhash.c
@@ -160,6 +160,10 @@ static inline dma_addr_t map_seq_out_ptr_result(u32 *desc, struct device *jrdev,
 	dma_addr_t dst_dma;
 
 	dst_dma = dma_map_single(jrdev, result, digestsize, DMA_FROM_DEVICE);
+	if (dma_mapping_error(jrdev, dst_dma)) {
+		dev_err(jrdev, "unable to map dst dma\n");
+		return -ENOMEM;
+	}
 	append_seq_out_ptr(desc, dst_dma, digestsize, 0);
 
 	return dst_dma;
Value returned by map_seq_out_ptr_result() - dst_dma - is always fed to
dma_mapping_error().
Note that using an invalid dst_dma in append_seq_out_ptr() doesn't break
anything, so it's ok to check dst_dma later.
quoted hunk ↗ jump to hunk
@@ -173,6 +177,10 @@ static inline dma_addr_t buf_map_to_sec4_sg(struct device *jrdev,
 	dma_addr_t buf_dma;
 
 	buf_dma = dma_map_single(jrdev, buf, buflen, DMA_TO_DEVICE);
+	if (dma_mapping_error(jrdev, buf_dma)) {
+		dev_err(jrdev, "unable to map buf dma\n");
+		return 0;
+	}
 	dma_to_sec4_sg_one(sec4_sg, buf_dma, buflen, 0);
 
 	return buf_dma;
These functions are expected to return dma_addr_t, not an error code.
If dma_mapping_error() is needed within their scope, the return type
will have to change. And return value will need to be checked by their
callers.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help