crypto: ccree - use std api sg_zero_buffer
authorGilad Ben-Yossef <gilad@benyossef.com>
Mon, 29 Jul 2019 10:40:19 +0000 (13:40 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 9 Aug 2019 05:05:31 +0000 (15:05 +1000)
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>
drivers/crypto/ccree/cc_aead.c
drivers/crypto/ccree/cc_buffer_mgr.c
drivers/crypto/ccree/cc_buffer_mgr.h

index 339fabf..a9779a2 100644 (file)
@@ -236,7 +236,8 @@ static void cc_aead_complete(struct device *dev, void *cc_req, int err)
                        /* In case of payload authentication failure, MUST NOT
                         * revealed the decrypted message --> zero its memory.
                         */
-                       cc_zero_sgl(areq->dst, areq->cryptlen);
+                       sg_zero_buffer(areq->dst, sg_nents(areq->dst),
+                                      areq->cryptlen, 0);
                        err = -EBADMSG;
                }
        /*ENCRYPT*/
index c81ad33..a72586e 100644 (file)
@@ -100,27 +100,6 @@ static unsigned int cc_get_sgl_nents(struct device *dev,
 }
 
 /**
- * cc_zero_sgl() - Zero scatter scatter list data.
- *
- * @sgl:
- */
-void cc_zero_sgl(struct scatterlist *sgl, u32 data_len)
-{
-       struct scatterlist *current_sg = sgl;
-       int sg_index = 0;
-
-       while (sg_index <= data_len) {
-               if (!current_sg) {
-                       /* reached the end of the sgl --> just return back */
-                       return;
-               }
-               memset(sg_virt(current_sg), 0, current_sg->length);
-               sg_index += current_sg->length;
-               current_sg = sg_next(current_sg);
-       }
-}
-
-/**
  * cc_copy_sg_portion() - Copy scatter list data,
  * from to_skip to end, to dest and vice versa
  *
index a726016..af43487 100644 (file)
@@ -66,6 +66,4 @@ void cc_unmap_hash_request(struct device *dev, void *ctx,
 void cc_copy_sg_portion(struct device *dev, u8 *dest, struct scatterlist *sg,
                        u32 to_skip, u32 end, enum cc_sg_cpy_direct direct);
 
-void cc_zero_sgl(struct scatterlist *sgl, u32 data_len);
-
 #endif /*__BUFFER_MGR_H__*/