# SPDX-License-Identifier: GPL-2.0
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_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"
	select BLK_ICQ
	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
