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