diff options
author | Gilad Ben-Yossef <gilad@benyossef.com> | 2019-07-29 06:40:19 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2019-08-09 01:05:31 -0400 |
commit | e88b27c8eaa8f3126791778803dd2fdd81828f5c (patch) | |
tree | e8227579a53565f542f40f32f9f2f3aba0b90d5f | |
parent | 7a4be6c113c1f721818d1e3722a9015fe393295c (diff) |
crypto: ccree - use std api sg_zero_buffer
Replace internal cc_zero_sgl() with kernel API of the same function
sg_zero_buffer().
Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r-- | drivers/crypto/ccree/cc_aead.c | 3 | ||||
-rw-r--r-- | drivers/crypto/ccree/cc_buffer_mgr.c | 21 | ||||
-rw-r--r-- | drivers/crypto/ccree/cc_buffer_mgr.h | 2 |
3 files changed, 2 insertions, 24 deletions
diff --git a/drivers/crypto/ccree/cc_aead.c b/drivers/crypto/ccree/cc_aead.c index 339fabfe3de6..a9779a212b18 100644 --- a/drivers/crypto/ccree/cc_aead.c +++ b/drivers/crypto/ccree/cc_aead.c | |||
@@ -236,7 +236,8 @@ static void cc_aead_complete(struct device *dev, void *cc_req, int err) | |||
236 | /* In case of payload authentication failure, MUST NOT | 236 | /* In case of payload authentication failure, MUST NOT |
237 | * revealed the decrypted message --> zero its memory. | 237 | * revealed the decrypted message --> zero its memory. |
238 | */ | 238 | */ |
239 | cc_zero_sgl(areq->dst, areq->cryptlen); | 239 | sg_zero_buffer(areq->dst, sg_nents(areq->dst), |
240 | areq->cryptlen, 0); | ||
240 | err = -EBADMSG; | 241 | err = -EBADMSG; |
241 | } | 242 | } |
242 | /*ENCRYPT*/ | 243 | /*ENCRYPT*/ |
diff --git a/drivers/crypto/ccree/cc_buffer_mgr.c b/drivers/crypto/ccree/cc_buffer_mgr.c index c81ad33f9115..a72586eccd81 100644 --- a/drivers/crypto/ccree/cc_buffer_mgr.c +++ b/drivers/crypto/ccree/cc_buffer_mgr.c | |||
@@ -100,27 +100,6 @@ static unsigned int cc_get_sgl_nents(struct device *dev, | |||
100 | } | 100 | } |
101 | 101 | ||
102 | /** | 102 | /** |
103 | * cc_zero_sgl() - Zero scatter scatter list data. | ||
104 | * | ||
105 | * @sgl: | ||
106 | */ | ||
107 | void cc_zero_sgl(struct scatterlist *sgl, u32 data_len) | ||
108 | { | ||
109 | struct scatterlist *current_sg = sgl; | ||
110 | int sg_index = 0; | ||
111 | |||
112 | while (sg_index <= data_len) { | ||
113 | if (!current_sg) { | ||
114 | /* reached the end of the sgl --> just return back */ | ||
115 | return; | ||
116 | } | ||
117 | memset(sg_virt(current_sg), 0, current_sg->length); | ||
118 | sg_index += current_sg->length; | ||
119 | current_sg = sg_next(current_sg); | ||
120 | } | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * cc_copy_sg_portion() - Copy scatter list data, | 103 | * cc_copy_sg_portion() - Copy scatter list data, |
125 | * from to_skip to end, to dest and vice versa | 104 | * from to_skip to end, to dest and vice versa |
126 | * | 105 | * |
diff --git a/drivers/crypto/ccree/cc_buffer_mgr.h b/drivers/crypto/ccree/cc_buffer_mgr.h index a726016bdbc1..af434872c6ff 100644 --- a/drivers/crypto/ccree/cc_buffer_mgr.h +++ b/drivers/crypto/ccree/cc_buffer_mgr.h | |||
@@ -66,6 +66,4 @@ void cc_unmap_hash_request(struct device *dev, void *ctx, | |||
66 | void cc_copy_sg_portion(struct device *dev, u8 *dest, struct scatterlist *sg, | 66 | void cc_copy_sg_portion(struct device *dev, u8 *dest, struct scatterlist *sg, |
67 | u32 to_skip, u32 end, enum cc_sg_cpy_direct direct); | 67 | u32 to_skip, u32 end, enum cc_sg_cpy_direct direct); |
68 | 68 | ||
69 | void cc_zero_sgl(struct scatterlist *sgl, u32 data_len); | ||
70 | |||
71 | #endif /*__BUFFER_MGR_H__*/ | 69 | #endif /*__BUFFER_MGR_H__*/ |