All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@kernel.dk>
To: linux-block@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>, Christoph Hellwig <hch@infradead.org>
Subject: [PATCH 05/14] block: don't call blk_status_to_errno() for success status
Date: Sat, 16 Oct 2021 19:37:39 -0600	[thread overview]
Message-ID: <20211017013748.76461-6-axboe@kernel.dk> (raw)
In-Reply-To: <20211017013748.76461-1-axboe@kernel.dk>

We only need to call it to resolve the blk_status_t -> errno mapping
if the status is different than BLK_STS_OK. Check that it is before
doing so.

Suggested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
---
 block/blk-mq.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/block/blk-mq.c b/block/blk-mq.c
index ffccc5f0f66a..fa5b12200404 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -676,9 +676,11 @@ static void blk_account_io_completion(struct request *req, unsigned int bytes)
 bool blk_update_request(struct request *req, blk_status_t error,
 		unsigned int nr_bytes)
 {
-	int total_bytes;
+	int total_bytes, blk_errno = 0;
 
-	trace_block_rq_complete(req, blk_status_to_errno(error), nr_bytes);
+	if (unlikely(error != BLK_STS_OK))
+		blk_errno = blk_status_to_errno(error);
+	trace_block_rq_complete(req, blk_errno, nr_bytes);
 
 	if (!req->bio)
 		return false;
-- 
2.33.1


  parent reply	other threads:[~2021-10-17  1:37 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-17  1:37 [PATCHSET 0/14] Various block layer optimizations Jens Axboe
2021-10-17  1:37 ` [PATCH 01/14] block: inline fast path of driver tag allocation Jens Axboe
2021-10-18  8:42   ` Christoph Hellwig
2021-10-18 14:38     ` Jens Axboe
2021-10-17  1:37 ` [PATCH 02/14] block: don't bother iter advancing a fully done bio Jens Axboe
2021-10-18  8:42   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 03/14] block: remove useless caller argument to print_req_error() Jens Axboe
2021-10-18  8:42   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 04/14] block: move update request helpers into blk-mq.c Jens Axboe
2021-10-18  8:43   ` Christoph Hellwig
2021-10-17  1:37 ` Jens Axboe [this message]
2021-10-18  8:53   ` [PATCH 05/14] block: don't call blk_status_to_errno() for success status Christoph Hellwig
2021-10-18 10:49   ` Pavel Begunkov
2021-10-17  1:37 ` [PATCH 06/14] block: store elevator state in request Jens Axboe
2021-10-18  8:58   ` Christoph Hellwig
2021-10-18 14:34     ` Jens Axboe
2021-10-19 22:21   ` Guillaume Tucker
2021-10-19 22:26     ` Jens Axboe
2021-10-17  1:37 ` [PATCH 07/14] block: change plugging to use a singly linked list Jens Axboe
2021-10-17  4:45   ` kernel test robot
2021-10-17  4:45     ` kernel test robot
2021-10-18  9:19   ` Christoph Hellwig
2021-10-18 16:10     ` Jens Axboe
2021-10-18 12:56   ` Pavel Begunkov
2021-10-18 13:34     ` Jens Axboe
2021-10-24 14:09   ` kernel test robot
2021-10-17  1:37 ` [PATCH 08/14] block: improve layout of struct request Jens Axboe
2021-10-18  9:19   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 09/14] block: only mark bio as tracked if it really is tracked Jens Axboe
2021-10-18  9:19   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 10/14] block: move blk_mq_tag_to_rq() inline Jens Axboe
2021-10-17  1:37 ` [PATCH 11/14] block: optimize blk_mq_rq_ctx_init() Jens Axboe
2021-10-18  9:20   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 12/14] block: align blkdev_dio inlined bio to a cacheline Jens Axboe
2021-10-18  9:21   ` Christoph Hellwig
2021-10-18 14:36     ` Jens Axboe
2021-10-17  1:37 ` [PATCH 13/14] block: remove debugfs blk_mq_ctx dispatched/merged/completed attributes Jens Axboe
2021-10-18  9:21   ` Christoph Hellwig
2021-10-17  1:37 ` [PATCH 14/14] block: remove some blk_mq_hw_ctx debugfs entries Jens Axboe
2021-10-18  9:22   ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211017013748.76461-6-axboe@kernel.dk \
    --to=axboe@kernel.dk \
    --cc=hch@infradead.org \
    --cc=linux-block@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.