block: make kblockd_workqueue smarter
kblockd is used for unplugging and may affect IO latency and throughput and the max number of concurrent work items are bound by the number of block devices. Make it HIGHPRI workqueue w/ default max concurrency. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
This commit is contained in:
parent
27667c996f
commit
89b90be2d8
|
@ -2606,7 +2606,9 @@ int __init blk_dev_init(void)
|
||||||
BUILD_BUG_ON(__REQ_NR_BITS > 8 *
|
BUILD_BUG_ON(__REQ_NR_BITS > 8 *
|
||||||
sizeof(((struct request *)0)->cmd_flags));
|
sizeof(((struct request *)0)->cmd_flags));
|
||||||
|
|
||||||
kblockd_workqueue = create_workqueue("kblockd");
|
/* used for unplugging and affects IO latency/throughput - HIGHPRI */
|
||||||
|
kblockd_workqueue = alloc_workqueue("kblockd",
|
||||||
|
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
||||||
if (!kblockd_workqueue)
|
if (!kblockd_workqueue)
|
||||||
panic("Failed to create kblockd\n");
|
panic("Failed to create kblockd\n");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue