]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
crypto: sun8i-ss - Move j init earlier in sun8i_ss_hash_run
authorHerbert Xu <herbert@gondor.apana.org.au>
Fri, 17 Oct 2025 08:00:50 +0000 (16:00 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 23 Oct 2025 04:55:43 +0000 (12:55 +0800)
With gcc-14 I get

../drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c: In function ‘sun8i_ss_hash_run’:
../drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c:631:21: warning: ‘j’ may be used uninitialized [-Wmaybe-uninitialized]
  631 |                 j = hash_pad(bf, 4096, j, byte_count, true, bs);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c:493:13: note: ‘j’ was declared here
  493 |         int j, i, k, todo;
      |             ^

Fix this false positive by moving the initialisation of j earlier.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-hash.c

index 8bc08089f044fec15c8c49ee70e2b0744e96da3a..36a1ebca2e70c1875d9b89908964eadf41be8e1d 100644 (file)
@@ -502,6 +502,7 @@ int sun8i_ss_hash_run(struct crypto_engine *engine, void *breq)
 
        algt = container_of(alg, struct sun8i_ss_alg_template, alg.hash.base);
        ss = algt->ss;
+       j = 0;
 
        digestsize = crypto_ahash_digestsize(tfm);
        if (digestsize == SHA224_DIGEST_SIZE)
@@ -536,7 +537,6 @@ int sun8i_ss_hash_run(struct crypto_engine *engine, void *breq)
                goto err_dma_result;
        }
 
-       j = 0;
        len = areq->nbytes;
        sg = areq->src;
        i = 0;