aoe: avoid running request handler on plugged queue
authorEd Cashin <ecashin@coraid.com>
Fri, 9 Nov 2012 00:17:15 +0000 (19:17 -0500)
committerJens Axboe <axboe@kernel.dk>
Fri, 23 Nov 2012 13:32:55 +0000 (14:32 +0100)
Calling the request handler directly on a plugged queue defeats
the performance improvements provided by the plugging mechanism.
Use the __blk_run_queue function instead of calling the request
handler directly, so that we don't interfere with the block
layer's ability to plug the queue.

Signed-off-by: Ed Cashin <ecashin@coraid.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/aoe/aoecmd.c

index 3804a0af3ef192c441643eee425d06f747b86d97..9fe4f1865558abce9ccd7ebf1ee10a56284caf61 100644 (file)
@@ -935,7 +935,7 @@ aoe_end_request(struct aoedev *d, struct request *rq, int fastfail)
 
        /* cf. http://lkml.org/lkml/2006/10/31/28 */
        if (!fastfail)
-               q->request_fn(q);
+               __blk_run_queue(q);
 }
 
 static void