author: Lin Feng <linf@wangsu.com> 2021-04-15 11:39:20 +0800
committer: Jens Axboe <axboe@kernel.dk> 2021-04-16 06:06:49 -0600
commit: 8d663f34f8afcf5fc6a84c3cc4fa28cc84d58e39
parent: 347b546d5a9bd5871279a29be3dce8b5aad47ef6
Commit Summary:
Diffstat:
1 file changed, 2 insertions, 1 deletion
diff --git a/block/blk-mq.c b/block/blk-mq.c
index d4d7c1caa439..927189a55575 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -361,11 +361,12 @@ static struct request *__blk_mq_alloc_request(struct blk_mq_alloc_data *data)
if (e) {
/*
- * Flush requests are special and go directly to the
+ * Flush/passthrough requests are special and go directly to the
* dispatch list. Don't include reserved tags in the
* limiting, as it isn't useful.
*/
if (!op_is_flush(data->cmd_flags) &&
+ !blk_op_is_passthrough(data->cmd_flags) &&
e->type->ops.limit_depth &&
!(data->flags & BLK_MQ_REQ_RESERVED))
e->type->ops.limit_depth(data->cmd_flags, data);