]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
staging: ccree: fix buffer copy
authorGilad Ben-Yossef <gilad@benyossef.com>
Tue, 6 Jun 2017 08:00:45 +0000 (11:00 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 6 Jun 2017 14:23:27 +0000 (16:23 +0200)
Fix a bug where the copying of scatterlist buffers incorrectly
ignored bytes to skip in a scatterlist and ended 1 byte short.

This fixes testmgr hmac and hash test failures currently obscured
by hash import/export not being supported.

Fixes: abefd6741d ("staging: ccree: introduce CryptoCell HW driver").
Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ccree/ssi_buffer_mgr.c

index 038e2ff5e545f4b10e7c6ef34a30926aaffc5496..6471d3d2d3752ff52ff6f7ba064858b81bfed9a4 100644 (file)
@@ -216,7 +216,8 @@ void ssi_buffer_mgr_copy_scatterlist_portion(
        uint32_t nents, lbytes;
 
        nents = ssi_buffer_mgr_get_sgl_nents(sg, end, &lbytes, NULL);
-       sg_copy_buffer(sg, nents, (void *)dest, (end - to_skip), 0, (direct == SSI_SG_TO_BUF));
+       sg_copy_buffer(sg, nents, (void *)dest, (end - to_skip + 1), to_skip,
+                      (direct == SSI_SG_TO_BUF));
 }
 
 static inline int ssi_buffer_mgr_render_buff_to_mlli(