Kconfig.iosched 1.9 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
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

menu "IO Schedulers"

config IOSCHED_NOOP
	bool
	default y
	---help---
	  The no-op I/O scheduler is a minimal scheduler that does basic merging
	  and sorting. Its main uses include non-disk based block devices like
	  memory devices, and specialised software or hardware environments
	  that do their own scheduling and require only minimal assistance from
	  the kernel.

config IOSCHED_AS
	tristate "Anticipatory I/O scheduler"
	default y
	---help---
	  The anticipatory I/O scheduler is the default disk scheduler. It is
	  generally a good choice for most environments, but is quite large and
	  complex when compared to the deadline I/O scheduler, it can also be
	  slower in some cases especially some database loads.

config IOSCHED_DEADLINE
	tristate "Deadline I/O scheduler"
	default y
	---help---
	  The deadline I/O scheduler is simple and compact, and is often as
	  good as the anticipatory I/O scheduler, and in some database
	  workloads, better. In the case of a single process performing I/O to
	  a disk at any one time, its behaviour is almost identical to the
	  anticipatory I/O scheduler and so is a good choice.

config IOSCHED_CFQ
	tristate "CFQ I/O scheduler"
	default y
	---help---
	  The CFQ I/O scheduler tries to distribute bandwidth equally
	  among all processes in the system. It should provide a fair
	  working environment, suitable for desktop systems.

41 42
choice
	prompt "Default I/O scheduler"
43
	default DEFAULT_CFQ
44 45 46 47 48
	help
	  Select the I/O scheduler which will be used by default for all
	  block devices.

	config DEFAULT_AS
49
		bool "Anticipatory" if IOSCHED_AS=y
50 51

	config DEFAULT_DEADLINE
52
		bool "Deadline" if IOSCHED_DEADLINE=y
53 54

	config DEFAULT_CFQ
55
		bool "CFQ" if IOSCHED_CFQ=y
56 57 58 59 60 61 62 63 64 65 66 67 68

	config DEFAULT_NOOP
		bool "No-op"

endchoice

config DEFAULT_IOSCHED
	string
	default "anticipatory" if DEFAULT_AS
	default "deadline" if DEFAULT_DEADLINE
	default "cfq" if DEFAULT_CFQ
	default "noop" if DEFAULT_NOOP

Linus Torvalds's avatar
Linus Torvalds committed
69
endmenu