summaryrefslogtreecommitdiffstats
path: root/block/Kconfig
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2019-08-29 00:05:57 +0200
committerJens Axboe <axboe@kernel.dk>2019-08-29 05:17:10 +0200
commit6f816b4b746c2241540e537682d30d8e9997d674 (patch)
tree367f6fc02a7f8605cb19fd71f683d69bd96fab98 /block/Kconfig
parentblkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/ (diff)
downloadlinux-6f816b4b746c2241540e537682d30d8e9997d674.tar.xz
linux-6f816b4b746c2241540e537682d30d8e9997d674.zip
blk-mq: add optional request->alloc_time_ns
There are currently two start time timestamps - start_time_ns and io_start_time_ns. The former marks the request allocation and and the second issue-to-device time. The planned io.weight controller needs to measure the total time bios take to execute after it leaves rq_qos including the time spent waiting for request to become available, which can easily dominate on saturated devices. This patch adds request->alloc_time_ns which records when the request allocation attempt started. As it isn't used for the usual stats, make it optional behind CONFIG_BLK_RQ_ALLOC_TIME and QUEUE_FLAG_RQ_ALLOC_TIME so that it can be compiled out when there are no users and it's active only on queues which need it even when compiled in. v2: s/pre_start_time/alloc_time/ and add CONFIG_BLK_RQ_ALLOC_TIME gating as suggested by Jens. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/Kconfig')
-rw-r--r--block/Kconfig3
1 files changed, 3 insertions, 0 deletions
diff --git a/block/Kconfig b/block/Kconfig
index 8b5f8e560eb4..1b62ad6d0e12 100644
--- a/block/Kconfig
+++ b/block/Kconfig
@@ -26,6 +26,9 @@ menuconfig BLOCK
if BLOCK
+config BLK_RQ_ALLOC_TIME
+ bool
+
config BLK_SCSI_REQUEST
bool