crypto: mark crypto workqueues CPU_INTENSIVE
kcrypto_wq and pcrypt->wq's are used to run ciphers and may consume considerable amount of CPU cycles. Mark both as CPU_INTENSIVE so that they don't block other work items. As the workqueues are primarily used to burn CPU cycles, concurrency levels shouldn't matter much and are left at 1. A higher value may be beneficial and needs investigation. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
41f2977d40
commit
c73b7d02da
2 changed files with 4 additions and 2 deletions
|
@ -20,7 +20,8 @@ EXPORT_SYMBOL_GPL(kcrypto_wq);
|
|||
|
||||
static int __init crypto_wq_init(void)
|
||||
{
|
||||
kcrypto_wq = create_workqueue("crypto");
|
||||
kcrypto_wq = alloc_workqueue("crypto",
|
||||
WQ_MEM_RECLAIM | WQ_CPU_INTENSIVE, 1);
|
||||
if (unlikely(!kcrypto_wq))
|
||||
return -ENOMEM;
|
||||
return 0;
|
||||
|
|
|
@ -455,7 +455,8 @@ static int pcrypt_init_padata(struct padata_pcrypt *pcrypt,
|
|||
|
||||
get_online_cpus();
|
||||
|
||||
pcrypt->wq = create_workqueue(name);
|
||||
pcrypt->wq = alloc_workqueue(name,
|
||||
WQ_MEM_RECLAIM | WQ_CPU_INTENSIVE, 1);
|
||||
if (!pcrypt->wq)
|
||||
goto err;
|
||||
|
||||
|
|
Loading…
Reference in a new issue