summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com>2026-03-02 15:59:14 -0800
committerHerbert Xu <herbert@gondor.apana.org.au>2026-03-14 14:03:19 +0900
commit32e76e3757e89f370bf2ac8dba8aeb133071834e (patch)
tree543161d873304d3e5632c5910b4be43da8b12eae
parent3ac949881396361b6462a717f6cbbd97f368af02 (diff)
downloadlinux-32e76e3757e89f370bf2ac8dba8aeb133071834e.tar.gz
linux-32e76e3757e89f370bf2ac8dba8aeb133071834e.zip
crypto: tcrypt - clamp num_mb to avoid divide-by-zero
Passing num_mb=0 to the multibuffer speed tests leaves test_mb_aead_cycles() and test_mb_acipher_cycles() dividing by (8 * num_mb). With sec=0 (the default), the module prints "1 operation in ..." and hits a divide-by-zero fault. Force num_mb to at least 1 during module init and warn the caller so the warm-up loop and the final report stay well-defined. To reproduce: sudo modprobe tcrypt mode=600 num_mb=0 Signed-off-by: Saeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/tcrypt.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c
index aded37546137..61c8cf55c4f1 100644
--- a/crypto/tcrypt.c
+++ b/crypto/tcrypt.c
@@ -2808,6 +2808,11 @@ static int __init tcrypt_mod_init(void)
goto err_free_tv;
}
+ if (!num_mb) {
+ pr_warn("num_mb must be at least 1; forcing to 1\n");
+ num_mb = 1;
+ }
+
err = do_test(alg, type, mask, mode, num_mb);
if (err) {