block: drop queue lock before calling __blk_run_queue() for kblockd punt
authorJens Axboe <jaxboe@fusionio.com>
Mon, 18 Apr 2011 07:59:55 +0000 (09:59 +0200)
committerJens Axboe <jaxboe@fusionio.com>
Mon, 18 Apr 2011 07:59:55 +0000 (09:59 +0200)
commit99e22598e9a8e0a996d69c8c0f6b7027cb57720a
tree9cf18bc4681889bdfcbc0c845e384f809fb29fce
parentb4cb290e0a7d19235bd075c2ad4d60dbab0bac15
block: drop queue lock before calling __blk_run_queue() for kblockd punt

If we know we are going to punt to kblockd, we can drop the queue
lock before calling into __blk_run_queue() since it only does a
safe bit test and a workqueue call. Since kblockd needs to grab
this very lock as one of the first things it does, it's a good
optimization to drop the lock before waking kblockd.

Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
block/blk-core.c