Messages in this thread Patch in this message | | | From | Tejun Heo <> | Subject | [PATCH 04/32] bio-integrity: mark kintegrityd_wq highpri and CPU intensive | Date | Mon, 3 Jan 2011 14:49:27 +0100 |
| |
Work items processed by kintegrityd_wq won't block much, may burn a lot of CPU cycles and affect IO latency. Use alloc_workqueue() to mark it highpri and CPU intensive with max concurrency of 1.
Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Jens Axboe <axboe@kernel.dk> Cc: Martin K. Petersen <martin.petersen@oracle.com> --- Only compile tested. Please feel free to take it into the subsystem tree or simply ack - I'll route it through the wq tree.
Thanks.
fs/bio-integrity.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/fs/bio-integrity.c b/fs/bio-integrity.c index 4d0ff5e..e49cce2 100644 --- a/fs/bio-integrity.c +++ b/fs/bio-integrity.c @@ -782,7 +782,12 @@ void __init bio_integrity_init(void) { unsigned int i; - kintegrityd_wq = create_workqueue("kintegrityd"); + /* + * kintegrityd won't block much but may burn a lot of CPU cycles. + * Make it highpri CPU intensive wq with max concurrency of 1. + */ + kintegrityd_wq = alloc_workqueue("kintegrityd", WQ_MEM_RECLAIM | + WQ_HIGHPRI | WQ_CPU_INTENSIVE, 1); if (!kintegrityd_wq) panic("Failed to create kintegrityd\n"); -- 1.7.1
| |