crypto: sun8i-ce-cipher - use IS_ENABLED() checks for debugfs stats
authorOvidiu Panait <ovidiu.panait.oss@gmail.com>
Fri, 25 Apr 2025 12:45:16 +0000 (15:45 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 28 Apr 2025 11:45:26 +0000 (19:45 +0800)
Add IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG) checks before the
fallback counter updates to make sure the code is not included when
debugfs statistics support is not enabled.

Also, drop the existing ifdef guards, since 'struct sun8i_ce_alg_template'
is always defined, even with CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG disabled.

Signed-off-by: Ovidiu Panait <ovidiu.panait.oss@gmail.com>
Tested-by: Corentin LABBE <clabbe.montjoie@gmail.com>
Acked-by: Corentin LABBE <clabbe.montjoie@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c

index ba50f98fdf092fc91fdabc42ea9d4c46e42ba470..91bc3c2c488f7b71007cf76def93ede52cd7b46c 100644 (file)
@@ -33,22 +33,30 @@ static int sun8i_ce_cipher_need_fallback(struct skcipher_request *areq)
 
        if (sg_nents_for_len(areq->src, areq->cryptlen) > MAX_SG ||
            sg_nents_for_len(areq->dst, areq->cryptlen) > MAX_SG) {
-               algt->stat_fb_maxsg++;
+               if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                       algt->stat_fb_maxsg++;
+
                return true;
        }
 
        if (areq->cryptlen < crypto_skcipher_ivsize(tfm)) {
-               algt->stat_fb_leniv++;
+               if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                       algt->stat_fb_leniv++;
+
                return true;
        }
 
        if (areq->cryptlen == 0) {
-               algt->stat_fb_len0++;
+               if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                       algt->stat_fb_len0++;
+
                return true;
        }
 
        if (areq->cryptlen % 16) {
-               algt->stat_fb_mod16++;
+               if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                       algt->stat_fb_mod16++;
+
                return true;
        }
 
@@ -56,12 +64,16 @@ static int sun8i_ce_cipher_need_fallback(struct skcipher_request *areq)
        sg = areq->src;
        while (sg) {
                if (!IS_ALIGNED(sg->offset, sizeof(u32))) {
-                       algt->stat_fb_srcali++;
+                       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                               algt->stat_fb_srcali++;
+
                        return true;
                }
                todo = min(len, sg->length);
                if (todo % 4) {
-                       algt->stat_fb_srclen++;
+                       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                               algt->stat_fb_srclen++;
+
                        return true;
                }
                len -= todo;
@@ -72,12 +84,16 @@ static int sun8i_ce_cipher_need_fallback(struct skcipher_request *areq)
        sg = areq->dst;
        while (sg) {
                if (!IS_ALIGNED(sg->offset, sizeof(u32))) {
-                       algt->stat_fb_dstali++;
+                       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                               algt->stat_fb_dstali++;
+
                        return true;
                }
                todo = min(len, sg->length);
                if (todo % 4) {
-                       algt->stat_fb_dstlen++;
+                       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+                               algt->stat_fb_dstlen++;
+
                        return true;
                }
                len -= todo;
@@ -100,9 +116,7 @@ static int sun8i_ce_cipher_fallback(struct skcipher_request *areq)
                algt = container_of(alg, struct sun8i_ce_alg_template,
                                    alg.skcipher.base);
 
-#ifdef CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG
                algt->stat_fb++;
-#endif
        }
 
        skcipher_request_set_tfm(&rctx->fallback_req, op->fallback_tfm);
@@ -146,9 +160,8 @@ static int sun8i_ce_cipher_prepare(struct crypto_engine *engine, void *async_req
                rctx->op_dir, areq->iv, crypto_skcipher_ivsize(tfm),
                op->keylen);
 
-#ifdef CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG
-       algt->stat_req++;
-#endif
+       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+               algt->stat_req++;
 
        flow = rctx->flow;
 
@@ -437,9 +450,10 @@ int sun8i_ce_cipher_init(struct crypto_tfm *tfm)
        crypto_skcipher_set_reqsize(sktfm, sizeof(struct sun8i_cipher_req_ctx) +
                                    crypto_skcipher_reqsize(op->fallback_tfm));
 
-       memcpy(algt->fbname,
-              crypto_skcipher_driver_name(op->fallback_tfm),
-              CRYPTO_MAX_ALG_NAME);
+       if (IS_ENABLED(CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG))
+               memcpy(algt->fbname,
+                      crypto_skcipher_driver_name(op->fallback_tfm),
+                      CRYPTO_MAX_ALG_NAME);
 
        err = pm_runtime_get_sync(op->ce->dev);
        if (err < 0)