1# SPDX-License-Identifier: GPL-2.0 2if BLOCK 3 4menu "IO Schedulers" 5 6config MQ_IOSCHED_DEADLINE 7 tristate "MQ deadline I/O scheduler" 8 default y 9 help 10 MQ version of the deadline IO scheduler. 11 12config MQ_IOSCHED_DEADLINE_CGROUP 13 tristate 14 default y 15 depends on MQ_IOSCHED_DEADLINE 16 depends on BLK_CGROUP 17 18config MQ_IOSCHED_KYBER 19 tristate "Kyber I/O scheduler" 20 default y 21 help 22 The Kyber I/O scheduler is a low-overhead scheduler suitable for 23 multiqueue and other fast devices. Given target latencies for reads and 24 synchronous writes, it will self-tune queue depths to achieve that 25 goal. 26 27config IOSCHED_BFQ 28 tristate "BFQ I/O scheduler" 29 help 30 BFQ I/O scheduler for BLK-MQ. BFQ distributes the bandwidth of 31 of the device among all processes according to their weights, 32 regardless of the device parameters and with any workload. It 33 also guarantees a low latency to interactive and soft 34 real-time applications. Details in 35 Documentation/block/bfq-iosched.rst 36 37config BFQ_GROUP_IOSCHED 38 bool "BFQ hierarchical scheduling support" 39 depends on IOSCHED_BFQ && BLK_CGROUP 40 select BLK_CGROUP_RWSTAT 41 help 42 43 Enable hierarchical scheduling in BFQ, using the blkio 44 (cgroups-v1) or io (cgroups-v2) controller. 45 46config BFQ_CGROUP_DEBUG 47 bool "BFQ IO controller debugging" 48 depends on BFQ_GROUP_IOSCHED 49 help 50 Enable some debugging help. Currently it exports additional stat 51 files in a cgroup which can be useful for debugging. 52 53endmenu 54 55endif 56