summaryrefslogtreecommitdiff
path: root/block/Kconfig.iosched
blob: 7df14133adc80d2034ae5ca8a323f2850bfb8a6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# 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_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