diff options
| author | Saeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com> | 2026-03-02 15:59:14 -0800 |
|---|---|---|
| committer | Herbert Xu <herbert@gondor.apana.org.au> | 2026-03-14 14:03:19 +0900 |
| commit | 32e76e3757e89f370bf2ac8dba8aeb133071834e (patch) | |
| tree | 543161d873304d3e5632c5910b4be43da8b12eae | |
| parent | 3ac949881396361b6462a717f6cbbd97f368af02 (diff) | |
| download | linux-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.c | 5 |
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) { |
