This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / init / Kconfig
index 210ca2c..a7660cc 100644 (file)
@@ -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,33 @@ config BROKEN_ON_SMP
        depends on BROKEN || !SMP
        default y
 
-endmenu
+config LOCK_KERNEL
+       bool
+       depends on SMP || PREEMPT
+       default y
 
+config INIT_ENV_ARG_LIMIT
+       int
+       default 32 if !USERMODE
+       default 128 if USERMODE
+       help
+         This is the value of the two limits on the number of argument and of
+         env.var passed to init from the kernel command line.
+
+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
@@ -77,6 +89,7 @@ config SWAP
 
 config SYSVIPC
        bool "System V IPC"
+       depends on MMU
        ---help---
          Inter Process Communication is a suite of library functions and
          system calls which let processes (running programs) synchronize and
@@ -121,6 +134,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 <http://www.physik3.uni-rostock.de/tim/kernel/utils/acct/>.
+
 config SYSCTL
        bool "Sysctl support"
        ---help---
@@ -140,7 +165,6 @@ config SYSCTL
 config AUDIT
        bool "Auditing support"
        default y if SECURITY_SELINUX
-       default n
        help
          Enable auditing infrastructure that can be used with another
          kernel subsystem, such as SELinux (which requires this for
@@ -149,75 +173,69 @@ config AUDIT
 
 config AUDITSYSCALL
        bool "Enable system-call auditing support"
-       depends on AUDIT && (X86 || PPC64 || ARCH_S390)
+       depends on AUDIT && (X86 || PPC64 || ARCH_S390 || IA64 || UML)
        default y if SECURITY_SELINUX
-       default n
        help
          Enable low-overhead system-call auditing infrastructure that
          can be used independently or with another kernel subsystem,
          such as SELinux.
 
-config LOG_BUF_SHIFT
-       int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" if DEBUG_KERNEL
-       range 12 20
-       default 17 if ARCH_S390
-       default 16 if X86_NUMAQ || IA64
-       default 15 if SMP
-       default 14
-       help
-         Select kernel log buffer size as a power of 2.
-         Defaults and Examples:
-                    17 => 128 KB for S/390
-                    16 => 64 KB for x86 NUMAQ or IA-64
-                    15 => 32 KB for SMP
-                    14 => 16 KB for uniprocessor
-                    13 =>  8 KB
-                    12 =>  4 KB
-
 config HOTPLUG
        bool "Support for hot-pluggable devices" if !ARCH_S390
        default ARCH_S390
        help
-         Say Y here if you want to plug devices into your computer while
-         the system is running, and be able to use them quickly.  In many
-         cases, the devices can likewise be unplugged at any time too.
+         This option is provided for the case where no in-kernel-tree
+         modules require HOTPLUG functionality, but a module built
+         outside the kernel tree does. Such modules require Y here.
 
-         One well known example of this is PCMCIA- or PC-cards, credit-card
-         size devices such as network cards, modems or hard drives which are
-         plugged into slots found on all modern laptop computers.  Another
-         example, used on modern desktops as well as laptops, is USB.
-
-         Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
-         software (at <http://linux-hotplug.sourceforge.net/>) and install it.
-         Then your kernel will automatically call out to a user mode "policy
-         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---
          This option enables the complete Linux kernel ".config" file
-         contents, information on compiler used to build the kernel,
-         kernel running when this kernel was built and kernel version
-         from Makefile to be saved in the kernel. It provides documentation
+         contents to be saved in the kernel. It provides documentation
          of which kernel options are used in a running kernel or in an
          on-disk kernel.  This information can be extracted from the kernel
          image file with the script scripts/extract-ikconfig and used as
          input to rebuild the current kernel or to build another kernel.
          It can also be extracted from a running kernel by reading
-         /proc/config.gz and /proc/config_built_with, if enabled (below).
-         /proc/config.gz will list the configuration that was used
-         to build the kernel and /proc/config_built_with will list
-         information on the compiler and host machine that was used to
-         build the kernel.
+         /proc/config.gz if enabled (below).
 
 config IKCONFIG_PROC
        bool "Enable access to .config through /proc/config.gz"
        depends on IKCONFIG && PROC_FS
        ---help---
-         This option enables access to kernel configuration file and build
-         information through /proc/config.gz.
+         This option enables access to the kernel configuration file
+         through /proc/config.gz.
 
+config CPUSETS
+       bool "Cpuset support"
+       depends on SMP
+       help
+         This options will let you create and manage CPUSET's which
+         allow dynamically partitioning a system into sets of CPUs and
+         Memory Nodes and assigning tasks to run only within those sets.
+         This is primarily useful on large SMP or NUMA systems.
+
+         Say N if unsure.
 
 menuconfig EMBEDDED
        bool "Configure standard kernel features (for small systems)"
@@ -246,6 +264,46 @@ config KALLSYMS_ALL
 
           Say N.
 
+config KALLSYMS_EXTRA_PASS
+       bool "Do an extra kallsyms pass"
+       depends on KALLSYMS
+       help
+          If kallsyms is not working correctly, the build will fail with
+          inconsistent kallsyms data.  If that occurs, log a bug report and
+          turn on KALLSYMS_EXTRA_PASS which should result in a stable build.
+          Always say N here unless you find a bug in kallsyms, which must be
+          reported.  KALLSYMS_EXTRA_PASS is only a temporary workaround while
+          you wait for kallsyms to be fixed.
+
+
+config PRINTK
+       default y
+       bool "Enable support for printk" if EMBEDDED
+       help
+         This option enables normal printk support. Removing it
+         eliminates most of the message strings from the kernel image
+         and makes the kernel more or less silent. As this makes it
+         very difficult to diagnose system problems, saying N here is
+         strongly discouraged.
+
+config BUG
+       bool "BUG() support" if EMBEDDED
+       default y
+       help
+          Disabling this option eliminates support for BUG and WARN, reducing
+          the size of your kernel image and potentially quietly ignoring
+          numerous fatal conditions. You should only consider disabling this
+          option for embedded systems with no facilities for reporting errors.
+          Just say Y.
+
+config BASE_FULL
+       default y
+       bool "Enable full-sized data structures for core" if EMBEDDED
+       help
+         Disabling this option reduces the size of miscellaneous core
+         kernel data structures. This saves memory on small machines,
+         but may reduce performance.
+
 config FUTEX
        bool "Enable futex support" if EMBEDDED
        default y
@@ -261,12 +319,9 @@ 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" if EMBEDDED
        default y if ARM || H8300
-       default n
        help
          Enabling this option will pass "-Os" instead of "-O2" to gcc
          resulting in a smaller kernel.
@@ -276,8 +331,64 @@ config CC_OPTIMIZE_FOR_SIZE
 
          If unsure, say N.
 
+config SHMEM
+       bool "Use full shmem filesystem" if EMBEDDED
+       default y
+       depends on 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
+
+config BASE_SMALL
+       int
+       default 0 if BASE_FULL
+       default 1 if !BASE_FULL
 
 menu "Loadable module support"
 
@@ -340,6 +451,18 @@ 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 KMOD
        bool "Automatic kernel module loading"
        depends on MODULES