# SPDX-License-Identifier: GPL-2.0 if BLOCK menu "IO Schedulers" config MQ_IOSCHED_DEADLINE tristate "MQ deadline I/O scheduler" default y help MQ version of the deadline IO scheduler. config MQ_IOSCHED_DEADLINE_CGROUP tristate default y depends on MQ_IOSCHED_DEADLINE depends on BLK_CGROUP config MQ_IOSCHED_KYBER tristate "Kyber I/O scheduler" default y help The Kyber I/O scheduler is a low-overhead scheduler suitable for multiqueue and other fast devices. Given target latencies for reads and synchronous writes, it will self-tune queue depths to achieve that goal. config IOSCHED_BFQ tristate "BFQ I/O scheduler" help BFQ I/O scheduler for BLK-MQ. BFQ distributes the bandwidth of of the device among all processes according to their weights, regardless of the device parameters and with any workload. It also guarantees a low latency to interactive and soft real-time applications. Details in Documentation/block/bfq-iosched.rst config BFQ_GROUP_IOSCHED bool "BFQ hierarchical scheduling support" depends on IOSCHED_BFQ && BLK_CGROUP select BLK_CGROUP_RWSTAT help Enable hierarchical scheduling in BFQ, using the blkio (cgroups-v1) or io (cgroups-v2) controller. config BFQ_CGROUP_DEBUG bool "BFQ IO controller debugging" depends on BFQ_GROUP_IOSCHED help Enable some debugging help. Currently it exports additional stat files in a cgroup which can be useful for debugging. endmenu endif