Commit db0c62bc authored by Corentin Labbe's avatar Corentin Labbe Committed by Herbert Xu
Browse files

crypto: sun8i-ss - do not zeroize all pad



Instead of memset all pad buffer, it is faster to only put 0 where
needed.

Signed-off-by: default avatarCorentin Labbe <clabbe@baylibre.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 8eec4563
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -319,7 +319,7 @@ int sun8i_ss_hash_run(struct crypto_engine *engine, void *breq)
	unsigned int len;
	u64 fill, min_fill, byte_count;
	void *pad, *result;
	int j, i, todo;
	int j, i, k, todo;
	__be64 *bebits;
	__le64 *lebits;
	dma_addr_t addr_res, addr_pad;
@@ -334,7 +334,6 @@ int sun8i_ss_hash_run(struct crypto_engine *engine, void *breq)

	result = ss->flows[rctx->flow].result;
	pad = ss->flows[rctx->flow].pad;
	memset(pad, 0, algt->alg.hash.halg.base.cra_blocksize * 2);
	bf = (__le32 *)pad;

	for (i = 0; i < MAX_SG; i++) {
@@ -395,7 +394,10 @@ int sun8i_ss_hash_run(struct crypto_engine *engine, void *breq)
	if (fill < min_fill)
		fill += 64;

	k = j;
	j += (fill - min_fill) / sizeof(u32);
	for (; k < j; k++)
		bf[k] = 0;

	switch (algt->ss_algo_id) {
	case SS_ID_HASH_MD5: