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