0001 # SPDX-License-Identifier: GPL-2.0
0002 menu "IO Schedulers"
0003
0004 config MQ_IOSCHED_DEADLINE
0005 tristate "MQ deadline I/O scheduler"
0006 default y
0007 help
0008 MQ version of the deadline IO scheduler.
0009
0010 config MQ_IOSCHED_KYBER
0011 tristate "Kyber I/O scheduler"
0012 default y
0013 help
0014 The Kyber I/O scheduler is a low-overhead scheduler suitable for
0015 multiqueue and other fast devices. Given target latencies for reads and
0016 synchronous writes, it will self-tune queue depths to achieve that
0017 goal.
0018
0019 config IOSCHED_BFQ
0020 tristate "BFQ I/O scheduler"
0021 select BLK_ICQ
0022 help
0023 BFQ I/O scheduler for BLK-MQ. BFQ distributes the bandwidth of
0024 of the device among all processes according to their weights,
0025 regardless of the device parameters and with any workload. It
0026 also guarantees a low latency to interactive and soft
0027 real-time applications. Details in
0028 Documentation/block/bfq-iosched.rst
0029
0030 config BFQ_GROUP_IOSCHED
0031 bool "BFQ hierarchical scheduling support"
0032 depends on IOSCHED_BFQ && BLK_CGROUP
0033 select BLK_CGROUP_RWSTAT
0034 help
0035
0036 Enable hierarchical scheduling in BFQ, using the blkio
0037 (cgroups-v1) or io (cgroups-v2) controller.
0038
0039 config BFQ_CGROUP_DEBUG
0040 bool "BFQ IO controller debugging"
0041 depends on BFQ_GROUP_IOSCHED
0042 help
0043 Enable some debugging help. Currently it exports additional stat
0044 files in a cgroup which can be useful for debugging.
0045
0046 endmenu