summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorJon Maxwell <jmaxwell37@gmail.com>2017-11-22 06:08:17 +0100
committerHerbert Xu <herbert@gondor.apana.org.au>2017-11-29 07:33:31 +0100
commitc3a536056374ef8412c7ffa13790303ec02d8f46 (patch)
treec95ac71c85b529c36dad3c6ea82987b5de800009 /crypto
parentcrypto: arm64/aes-ce-cipher - move assembler code to .S file (diff)
downloadlinux-c3a536056374ef8412c7ffa13790303ec02d8f46.tar.xz
linux-c3a536056374ef8412c7ffa13790303ec02d8f46.zip
crypto: cryptd - Add cryptd_max_cpu_qlen module parameter
Make the cryptd queue length configurable. We recently had customer where this needed to be tuned to accommodate the aesni_intel module and prevent packet drop. Signed-off-by: Jon Maxwell <jmaxwell37@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/cryptd.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/crypto/cryptd.c b/crypto/cryptd.c
index bd43cf5be14c..b1eb131c0f10 100644
--- a/crypto/cryptd.c
+++ b/crypto/cryptd.c
@@ -32,7 +32,9 @@
#include <linux/sched.h>
#include <linux/slab.h>
-#define CRYPTD_MAX_CPU_QLEN 1000
+unsigned int cryptd_max_cpu_qlen = 1000;
+module_param(cryptd_max_cpu_qlen, uint, 0);
+MODULE_PARM_DESC(cryptd_max_cpu_qlen, "Set cryptd Max queue depth");
struct cryptd_cpu_queue {
struct crypto_queue queue;
@@ -116,6 +118,7 @@ static int cryptd_init_queue(struct cryptd_queue *queue,
crypto_init_queue(&cpu_queue->queue, max_cpu_qlen);
INIT_WORK(&cpu_queue->work, cryptd_queue_worker);
}
+ pr_info("cryptd: max_cpu_qlen set to %d\n", max_cpu_qlen);
return 0;
}
@@ -1372,7 +1375,7 @@ static int __init cryptd_init(void)
{
int err;
- err = cryptd_init_queue(&queue, CRYPTD_MAX_CPU_QLEN);
+ err = cryptd_init_queue(&queue, cryptd_max_cpu_qlen);
if (err)
return err;