[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230104142259.2673013-13-shikemeng@huaweicloud.com>
Date: Wed, 4 Jan 2023 22:22:58 +0800
From: Kemeng Shi <shikemeng@...weicloud.com>
To: axboe@...nel.dk, dwagner@...e.de, hare@...e.de,
ming.lei@...hat.com, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: hch@....de, john.garry@...wei.com, jack@...e.cz
Subject: [PATCH v2 12/13] blk-mq: use switch/case to improve readability in blk_mq_try_issue_list_directly
Use switch/case handle error as other function do to improve
readability in blk_mq_try_issue_list_directly.
Signed-off-by: Kemeng Shi <shikemeng@...weicloud.com>
---
block/blk-mq.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/block/blk-mq.c b/block/blk-mq.c
index 696bd4a82b14..64fa78d25d8e 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -2790,16 +2790,21 @@ void blk_mq_try_issue_list_directly(struct blk_mq_hw_ctx *hctx,
list_del_init(&rq->queuelist);
ret = blk_mq_request_issue_directly(rq, list_empty(list));
- if (ret != BLK_STS_OK) {
- if (ret == BLK_STS_RESOURCE ||
- ret == BLK_STS_DEV_RESOURCE) {
- blk_mq_request_bypass_insert(rq, false,
- list_empty(list));
- break;
- }
- blk_mq_end_request(rq, ret);
- } else
+ switch (ret) {
+ case BLK_STS_OK:
queued++;
+ break;
+ case BLK_STS_RESOURCE:
+ case BLK_STS_DEV_RESOURCE:
+ blk_mq_request_bypass_insert(rq, false,
+ list_empty(list));
+ if (hctx->queue->mq_ops->commit_rqs && queued)
+ hctx->queue->mq_ops->commit_rqs(hctx);
+ return;
+ default:
+ blk_mq_end_request(rq, ret);
+ break;
+ }
}
/*
--
2.30.0
Powered by blists - more mailing lists