summaryrefslogtreecommitdiff
path: root/net/qrtr
diff options
context:
space:
mode:
authorMing Lei <ming.lei@redhat.com>2020-03-12 17:15:48 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-03-21 08:11:57 +0100
commit235fb892d84649f7971f12437a25d6f1d427c538 (patch)
treeff03fb320bf43637140ce04bf536ca2c72aaf28c /net/qrtr
parentdbce8292217a85b30a1152036112ed0e809dbd1f (diff)
blk-mq: insert flush request to the front of dispatch queue
[ Upstream commit cc3200eac4c5eb11c3f34848a014d1f286316310 ] commit 01e99aeca397 ("blk-mq: insert passthrough request into hctx->dispatch directly") may change to add flush request to the tail of dispatch by applying the 'add_head' parameter of blk_mq_sched_insert_request. Turns out this way causes performance regression on NCQ controller because flush is non-NCQ command, which can't be queued when there is any in-flight NCQ command. When adding flush rq to the front of hctx->dispatch, it is easier to introduce extra time to flush rq's latency compared with adding to the tail of dispatch queue because of S_SCHED_RESTART, then chance of flush merge is increased, and less flush requests may be issued to controller. So always insert flush request to the front of dispatch queue just like before applying commit 01e99aeca397 ("blk-mq: insert passthrough request into hctx->dispatch directly"). Cc: Damien Le Moal <Damien.LeMoal@wdc.com> Cc: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com> Reported-by: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com> Fixes: 01e99aeca397 ("blk-mq: insert passthrough request into hctx->dispatch directly") Signed-off-by: Ming Lei <ming.lei@redhat.com> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net/qrtr')
0 files changed, 0 insertions, 0 deletions