On Tue, Apr 12, 2011 at 02:58:46PM +0200, Jens Axboe wrote: > Supposedly it's faster to do it inline rather than punt the dispatch. > But that may actually not be true, if you have multiple plugs going (and > thus multiple contenders for the queue lock on dispatch). So lets play > it safe and punt to kblockd, we can always revisit this later. Note that this can be optimized further by adding a new helper that just queues up work on kblockd without taking the queue lock, e.g. adding a new void blk_run_queue_async(struct request_queue *q) { if (likely(!blk_queue_stopped(q))) queue_delayed_work(kblockd_workqueue, &q->delay_work, 0); } And replacing all __blk_run_queue(q, true); callers with that, at which point they won't need the queuelock any more. -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel