X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=init%2FKconfig;h=974d75897a9c85c071e90a65fa85da30a7469297;hb=f1e004b9954890a051244a51f5fb7a225889208a;hp=29e794f70626a430b90548fc15edfadc56cda12a;hpb=70790a4b5cd6c0291e5b1a2836e2832d46036ac6;p=linux-2.6.git diff --git a/init/Kconfig b/init/Kconfig index 29e794f70..974d75897 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1,4 +1,3 @@ - menu "Code maturity level options" config EXPERIMENTAL @@ -41,15 +40,6 @@ config CLEAN_COMPILE If unsure, say Y -config STANDALONE - bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL - default y - help - Select this option if you don't have magic firmware for drivers that - need it. - - If unsure, say Y. - config BROKEN bool depends on !CLEAN_COMPILE @@ -60,11 +50,25 @@ config BROKEN_ON_SMP depends on BROKEN || !SMP default y -endmenu +config LOCK_KERNEL + bool + depends on SMP || PREEMPT + default y +endmenu menu "General setup" +config LOCALVERSION + string "Local version - append to kernel release" + help + Append an extra string to the end of your kernel version. + This will show up when you type uname, for example. + The string you set here will be appended after the contents of + any files with a filename matching localversion* in your + object and source tree, in that order. Your total string can + be a maximum of 64 characters. + config SWAP bool "Support for paging of anonymous memory (swap)" depends on MMU @@ -124,6 +128,18 @@ config BSD_PROCESS_ACCT up to the user level program to do useful things with this information. This is generally a good idea, so say Y. +config BSD_PROCESS_ACCT_V3 + bool "BSD Process Accounting version 3 file format" + depends on BSD_PROCESS_ACCT + default n + help + If you say Y here, the process accounting information is written + in a new file format that also logs the process IDs of each + process and it's parent. Note that this file format is incompatible + with previous v0/v1/v2 file formats, so you will need updated tools + for processing it. A preliminary version of these tools is available + at . + menu "Class Based Kernel Resource Management" config CKRM @@ -159,6 +175,16 @@ config CKRM_TYPE_TASKCLASS Say N if unsure +config CKRM_RES_NULL + tristate "Null Tasks Resource Manager" + depends on CKRM_TYPE_TASKCLASS + default m + help + Provides a Null Resource Controller for CKRM that is purely for + demonstration purposes. + + Say N if unsure, Y to use the feature. + config CKRM_RES_NUMTASKS tristate "Number of Tasks Resource Manager" depends on CKRM_TYPE_TASKCLASS @@ -172,21 +198,57 @@ config CKRM_RES_NUMTASKS config CKRM_CPU_SCHEDULE bool "CKRM CPU scheduler" depends on CKRM_TYPE_TASKCLASS - default m + default y help Use CKRM CPU scheduler instead of Linux Scheduler Say N if unsure, Y to use the feature. -config CKRM_CPU_MONITOR - tristate "CKRM CPU Resoure Monitor" - depends on CKRM_CPU_SCHEDULE +config CKRM_RES_BLKIO + tristate " Disk I/O Resource Controller" + depends on CKRM_TYPE_TASKCLASS && IOSCHED_CFQ default m help - Monitor CPU Resource Usage of the classes + Provides a resource controller for best-effort block I/O + bandwidth control. The controller attempts this by proportional + servicing of requests in the I/O scheduler. However, seek + optimizations and reordering by device drivers/disk controllers may + alter the actual bandwidth delivered to a class. Say N if unsure, Y to use the feature. +config CKRM_RES_MEM + bool "Class based physical memory controller" + default y + depends on CKRM + help + Provide the basic support for collecting physical memory usage information + among classes. Say Y if you want to know the memory usage of each class. + +config CKRM_MEM_LRUORDER_CHANGE + bool "Change the LRU ordering of scanned pages" + default n + depends on CKRM_RES_MEM + help + While trying to free pages, by default(n), scanned pages are left were they + are found if they belong to relatively under-used class. In this case the + LRU ordering of the memory subsystemis left intact. If this option is chosen, + then the scanned pages are moved to the tail of the list(active or inactive). + Changing this to yes reduces the checking overhead but violates the approximate + LRU order that is maintained by the paging subsystem. + +config CKRM_CPU_SCHEDULE_AT_BOOT + bool "Turn on at boot time" + depends on CKRM_CPU_SCHEDULE + default n + help + Enable CKRM CPU Scheduler at boot time. Otherwise + it can be turned on dynamically at runtime. If not + turned on the default Linux Scheduler behavior + will be obtained. + + Say N if unsure, Y to use this feature + config CKRM_TYPE_SOCKETCLASS bool "Class Manager for socket groups" depends on CKRM @@ -235,19 +297,6 @@ config CKRM_CRBCE endmenu -config BSD_PROCESS_ACCT_V3 - bool "BSD Process Accounting version 3 file format" - depends on BSD_PROCESS_ACCT - default n - help - If you say Y here, the process accounting information is written - in a new file format that also logs the process IDs of each - process and it's parent. Note that this file format is incompatible - with previous v0/v1/v2 file formats, so you will need updated tools - for processing it. A preliminary version of these tools is available - at . - - config SYSCTL bool "Sysctl support" ---help--- @@ -286,7 +335,7 @@ config AUDITSYSCALL config LOG_BUF_SHIFT int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" if DEBUG_KERNEL - range 12 20 + range 12 21 default 17 if ARCH_S390 default 16 if X86_NUMAQ || IA64 default 15 if SMP @@ -320,6 +369,25 @@ config HOTPLUG agent" (/sbin/hotplug) to load modules and set up software needed to use devices as you hotplug them. +config KOBJECT_UEVENT + bool "Kernel Userspace Events" + depends on NET + default y + help + This option enables the kernel userspace event layer, which is a + simple mechanism for kernel-to-user communication over a netlink + socket. + The goal of the kernel userspace events layer is to provide a simple + and efficient events system, that notifies userspace about kobject + state changes. This will enable applications to just listen for + events instead of polling system devices and files. + Hotplug events (kobject addition and removal) are also available on + the netlink socket in addition to the execution of /sbin/hotplug if + CONFIG_HOTPLUG is enabled. + + Say Y, unless you are building a system requiring minimal memory + consumption. + config IKCONFIG bool "Kernel .config support" ---help--- @@ -339,6 +407,22 @@ config IKCONFIG_PROC This option enables access to the kernel configuration file through /proc/config.gz. +config OOM_PANIC + bool "OOM Panic" + default y + ---help--- + This option enables panic() to be called when a system is out of + memory. This feature along with /proc/sys/kernel/panic allows a + different behavior on out-of-memory conditions when the standard + behavior (killing processes in an attempt to recover) does not + make sense. + + If unsure, say N. + +config OOM_KILL + bool + depends on !OOM_PANIC + default y menuconfig EMBEDDED bool "Configure standard kernel features (for small systems)" @@ -402,8 +486,6 @@ config EPOLL Disabling this option will cause the kernel to be built without support for epoll family of system calls. -source "drivers/block/Kconfig.iosched" - config CC_OPTIMIZE_FOR_SIZE bool "Optimize for size" default y if ARM || H8300 @@ -417,8 +499,58 @@ config CC_OPTIMIZE_FOR_SIZE If unsure, say N. +config SHMEM + default y + bool "Use full shmem filesystem" if EMBEDDED && MMU + help + The shmem is an internal filesystem used to manage shared memory. + It is backed by swap and manages resource limits. It is also exported + to userspace as tmpfs if TMPFS is enabled. Disabling this + option replaces shmem and tmpfs with the much simpler ramfs code, + which may be appropriate on small systems without swap. + +config CC_ALIGN_FUNCTIONS + int "Function alignment" if EMBEDDED + default 0 + help + Align the start of functions to the next power-of-two greater than n, + skipping up to n bytes. For instance, 32 aligns functions + to the next 32-byte boundary, but 24 would align to the next + 32-byte boundary only if this can be done by skipping 23 bytes or less. + Zero means use compiler's default. + +config CC_ALIGN_LABELS + int "Label alignment" if EMBEDDED + default 0 + help + Align all branch targets to a power-of-two boundary, skipping + up to n bytes like ALIGN_FUNCTIONS. This option can easily + make code slower, because it must insert dummy operations for + when the branch target is reached in the usual flow of the code. + Zero means use compiler's default. + +config CC_ALIGN_LOOPS + int "Loop alignment" if EMBEDDED + default 0 + help + Align loops to a power-of-two boundary, skipping up to n bytes. + Zero means use compiler's default. + +config CC_ALIGN_JUMPS + int "Jump alignment" if EMBEDDED + default 0 + help + Align branch targets to a power-of-two boundary, for branch + targets where the targets can only be reached by jumping, + skipping up to n bytes like ALIGN_FUNCTIONS. In this case, + no dummy operations need be executed. + Zero means use compiler's default. + endmenu # General setup +config TINY_SHMEM + default !SHMEM + bool menu "Loadable module support" @@ -481,9 +613,22 @@ config MODVERSIONS make them incompatible with the kernel you are running. If unsure, say N. +config MODULE_SRCVERSION_ALL + bool "Source checksum for all modules" + depends on MODULES + help + Modules which contain a MODULE_VERSION get an extra "srcversion" + field inserted into their modinfo section, which contains a + sum of the source files which made it. This helps maintainers + see exactly which source was used to build a module (since + others sometimes change the module source without updating + the version). With this option, such a "srcversion" field + will be created for all modules. If unsure, say N. + config MODULE_SIG bool "Module signature verification (EXPERIMENTAL)" depends on MODULES && EXPERIMENTAL + select CRYPTO select CRYPTO_SHA1 select CRYPTO_SIGNATURE help