]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blob - block/Kconfig.iosched
block: remove the anticipatory IO scheduler
[mirror_ubuntu-zesty-kernel.git] / block / Kconfig.iosched
1 if BLOCK
2
3 menu "IO Schedulers"
4
5 config IOSCHED_NOOP
6 bool
7 default y
8 ---help---
9 The no-op I/O scheduler is a minimal scheduler that does basic merging
10 and sorting. Its main uses include non-disk based block devices like
11 memory devices, and specialised software or hardware environments
12 that do their own scheduling and require only minimal assistance from
13 the kernel.
14
15 config IOSCHED_DEADLINE
16 tristate "Deadline I/O scheduler"
17 default y
18 ---help---
19 The deadline I/O scheduler is simple and compact. It will provide
20 CSCAN service with FIFO expiration of requests, switching to
21 a new point in the service tree and doing a batch of IO from there
22 in case of expiry.
23
24 config IOSCHED_CFQ
25 tristate "CFQ I/O scheduler"
26 default y
27 ---help---
28 The CFQ I/O scheduler tries to distribute bandwidth equally
29 among all processes in the system. It should provide a fair
30 working environment, suitable for desktop systems.
31 This is the default I/O scheduler.
32
33 choice
34 prompt "Default I/O scheduler"
35 default DEFAULT_CFQ
36 help
37 Select the I/O scheduler which will be used by default for all
38 block devices.
39
40 config DEFAULT_DEADLINE
41 bool "Deadline" if IOSCHED_DEADLINE=y
42
43 config DEFAULT_CFQ
44 bool "CFQ" if IOSCHED_CFQ=y
45
46 config DEFAULT_NOOP
47 bool "No-op"
48
49 endchoice
50
51 config DEFAULT_IOSCHED
52 string
53 default "deadline" if DEFAULT_DEADLINE
54 default "cfq" if DEFAULT_CFQ
55 default "noop" if DEFAULT_NOOP
56
57 endmenu
58
59 endif