Use unbound workqueue so that work is automatically ballanced between available CPUs. Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx> --- drivers/md/dm-crypt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-3.18-rc1/drivers/md/dm-crypt.c =================================================================== --- linux-3.18-rc1.orig/drivers/md/dm-crypt.c 2014-10-20 16:54:01.000000000 +0200 +++ linux-3.18-rc1/drivers/md/dm-crypt.c 2014-10-21 00:49:28.000000000 +0200 @@ -1808,7 +1808,7 @@ static int crypt_ctr(struct dm_target *t } cc->crypt_queue = alloc_workqueue("kcryptd", - WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM, 1); + WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM | WQ_UNBOUND, num_online_cpus()); if (!cc->crypt_queue) { ti->error = "Couldn't create kcryptd queue"; goto bad; -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel