From: Ming Lei <ming.lei@redhat.com>
Date: Thu, 2 Nov 2017 15:24:33 +0000 (+0800)
Subject: blk-flush: don't run queue for requests bypassing flush
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=9c71c83c857e7a84a5be5a56ea88da7098f51db8;p=linux.git

blk-flush: don't run queue for requests bypassing flush

blk_insert_flush() should only insert request since run queue always
follows it.

In case of bypassing flush, we don't need to run queue because every
blk_insert_flush() follows one run queue.

Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
---

diff --git a/block/blk-flush.c b/block/blk-flush.c
index 4938bec8cfef9..81bd1a8430431 100644
--- a/block/blk-flush.c
+++ b/block/blk-flush.c
@@ -463,7 +463,7 @@ void blk_insert_flush(struct request *rq)
 	if ((policy & REQ_FSEQ_DATA) &&
 	    !(policy & (REQ_FSEQ_PREFLUSH | REQ_FSEQ_POSTFLUSH))) {
 		if (q->mq_ops)
-			blk_mq_sched_insert_request(rq, false, true, false, false);
+			blk_mq_sched_insert_request(rq, false, false, false, false);
 		else
 			list_add_tail(&rq->queuelist, &q->queue_head);
 		return;