blk-mq: push IPI or local end_io decision to __blk_mq_complete_request()
authorJens Axboe <axboe@fb.com>
Sat, 31 May 2014 03:20:50 +0000 (21:20 -0600)
committerJens Axboe <axboe@fb.com>
Sat, 31 May 2014 03:20:50 +0000 (21:20 -0600)
We have callers outside of the blk-mq proper (like timeouts) that
want to call __blk_mq_complete_request(), so rename the function
and put the decision code for whether to use ->softirq_done_fn
or blk_mq_endio() into __blk_mq_complete_request().

This also makes the interface more logical again.
blk_mq_complete_request() attempts to atomically mark the request
completed, and calls __blk_mq_complete_request() if successful.
__blk_mq_complete_request() then just ends the request.

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

diff --cc block/blk-mq.c
Simple merge