blk-mq: remove unnecessary blk_clear_rq_complete()
authorMing Lei <ming.lei@canoical.com>
Wed, 17 Sep 2014 09:47:58 +0000 (17:47 +0800)
committerJens Axboe <axboe@fb.com>
Mon, 22 Sep 2014 18:00:07 +0000 (12:00 -0600)
commit2edd2c740b2918eb0a9a1fe1b69678b903769ec2
tree36df228ed4b404fdf1b53b966ccc914ad5555df3
parent0152fb6b57c4fae769ee75ea2ae670f4ff39fba9
blk-mq: remove unnecessary blk_clear_rq_complete()

This patch removes two unnecessary blk_clear_rq_complete(),
the REQ_ATOM_COMPLETE flag is cleared inside blk_mq_start_request(),
so:

- The blk_clear_rq_complete() in blk_flush_restore_request()
needn't because the request will be freed later, and clearing
it here may open a small race window with timeout.

- The blk_clear_rq_complete() in blk_mq_requeue_request() isn't
necessary too, even though REQ_ATOM_STARTED is cleared in
__blk_mq_requeue_request(), in theory it still may cause a small
race window with timeout since the two clear_bit() may be
reordered.

Signed-off-by: Ming Lei <ming.lei@canoical.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-flush.c
block/blk-mq.c