From: Shaohua Li <shli@kernel.org>
Date: Wed, 19 Feb 2014 12:20:21 +0000 (+0800)
Subject: blk-mq: add REQ_SYNC early
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=27fbf4e87c16bb3e40730890169a643a494b7c64;p=linux.git

blk-mq: add REQ_SYNC early

Add REQ_SYNC early, so rq_dispatched[] in blk_mq_rq_ctx_init
is set correctly.

Signed-off-by: Shaohua Li<shli@fusionio.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
---

diff --git a/block/blk-mq.c b/block/blk-mq.c
index 3c2804879a908..b1bcc619d0ea9 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -860,6 +860,8 @@ static void blk_mq_make_request(struct request_queue *q, struct bio *bio)
 	ctx = blk_mq_get_ctx(q);
 	hctx = q->mq_ops->map_queue(q, ctx->cpu);
 
+	if (is_sync)
+		rw |= REQ_SYNC;
 	trace_block_getrq(q, bio, rw);
 	rq = __blk_mq_alloc_request(hctx, GFP_ATOMIC, false);
 	if (likely(rq))