All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND PATCH v2] block: Consider only dispatched requests for inflight statistic
@ 2020-10-06 19:15 Gabriel Krisman Bertazi
  2020-10-06 19:20 ` Gabriel Krisman Bertazi
  0 siblings, 1 reply; 6+ messages in thread
From: Gabriel Krisman Bertazi @ 2020-10-06 19:15 UTC (permalink / raw)
  To: axboe; +Cc: linux-block, ming.lei, Gabriel Krisman Bertazi, kernel,
	Omar Sandoval

Hi Jens,

Reviving this, hopefully for the upcoming merge window, following the
suggestion that we let it sit there and see if people complain about the
metric fix.  As I mentioned, I'm also happy to change the documentation
plus create a new in_device metric to track only requests submitted, if
you prefer.

Thanks,

>8

According to Documentation/block/stat.rst, inflight should not include
I/O requests that are in the queue but not yet dispatched to the device,
but blk-mq identifies as inflight any request that has a tag allocated,
which, for queues without elevator, happens at request allocation time
and before it is queued in the ctx (default case in blk_mq_submit_bio).

In addition, current behavior is different for queues with elevator from
queues without it, since for the former the driver tag is allocated at
dispatch time.  A more precise approach would be to only consider
requests with state MQ_RQ_IN_FLIGHT.

This effectively reverts commit 6131837b1de6 ("blk-mq: count allocated
but not started requests in iostats inflight") to consolidate blk-mq
behavior with itself (elevator case) and with original documentation,
but it differs from the behavior used by the legacy path.

This version differs from v1 by using blk_mq_rq_state to access the
state attribute.  Avoid using blk_mq_request_started, which was
suggested, since we don't want to include MQ_RQ_COMPLETE.

Cc: Omar Sandoval <osandov@fb.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
---
 block/blk-mq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/blk-mq.c b/block/blk-mq.c
index 2e4b3cad2a61..c5fefd39d0c0 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
-- 
2.28.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-10-06 19:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-06 19:15 [RESEND PATCH v2] block: Consider only dispatched requests for inflight statistic Gabriel Krisman Bertazi
2020-10-06 19:20 ` Gabriel Krisman Bertazi
2020-10-06 19:27   ` Jens Axboe
2020-10-06 19:33     ` Gabriel Krisman Bertazi
2020-10-06 19:35       ` Jens Axboe
2020-10-06 19:42         ` Gabriel Krisman Bertazi

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.