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