blk-mq: kill preempt disable/enable in blk_mq_work_fn()
authorJens Axboe <axboe@fb.com>
Wed, 16 Apr 2014 16:38:35 +0000 (10:38 -0600)
committerJens Axboe <axboe@fb.com>
Wed, 16 Apr 2014 20:15:24 +0000 (14:15 -0600)
blk_mq_work_fn() is always invoked off the bounded workqueues,
so it can happily preempt among the queues in that set without
causing any issues for blk-mq.

Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-mq.c

index 1fa01ff0f9bce11a4bc24001e0bdcd14016c3ac0..b59a8d027dff956ec2c45b59b9f61008fb1e483c 100644 (file)
@@ -714,9 +714,7 @@ static void blk_mq_work_fn(struct work_struct *work)
 
        hctx = container_of(work, struct blk_mq_hw_ctx, delayed_work.work);
 
-       preempt_disable();
        __blk_mq_run_hw_queue(hctx);
-       preempt_enable();
 }
 
 static void __blk_mq_insert_request(struct blk_mq_hw_ctx *hctx,