summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorShaohua Li2014-02-19 13:20:21 +0100
committerJens Axboe2014-03-07 16:15:28 +0100
commit739c3eea711a255df5ed1246face0a4dce5e589f (patch)
tree5b84ca214d7e8b418ae4e9f221a9ac9f169c7ebc /block
parentrt,blk,mq: Make blk_mq_cpu_notify_lock a raw spinlock (diff)
downloadkernel-qcow2-linux-739c3eea711a255df5ed1246face0a4dce5e589f.tar.gz
kernel-qcow2-linux-739c3eea711a255df5ed1246face0a4dce5e589f.tar.xz
kernel-qcow2-linux-739c3eea711a255df5ed1246face0a4dce5e589f.zip
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>
Diffstat (limited to 'block')
-rw-r--r--block/blk-mq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/block/blk-mq.c b/block/blk-mq.c
index 1b8b50df3655..883f72089015 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))