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
 menu "Code maturity level options"
 
 config EXPERIMENTAL
@@ -41,15 +40,6 @@ config CLEAN_COMPILE
 
          If unsure, say Y
 
 
          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
 config BROKEN
        bool
        depends on !CLEAN_COMPILE
@@ -60,11 +50,33 @@ config BROKEN_ON_SMP
        depends on BROKEN || !SMP
        default y
 
        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"
 
 
 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
 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"
 
 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
        ---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.
 
          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---
 config SYSCTL
        bool "Sysctl support"
        ---help---
@@ -140,7 +165,6 @@ config SYSCTL
 config AUDIT
        bool "Auditing support"
        default y if SECURITY_SELINUX
 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
        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"
 
 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 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.
 
        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
 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
 
 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
          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---
 
 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)"
 
 menuconfig EMBEDDED
        bool "Configure standard kernel features (for small systems)"
@@ -246,6 +264,46 @@ config KALLSYMS_ALL
 
           Say N.
 
 
           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
 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.
 
          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
 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.
        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.
 
 
          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
 
 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"
 
 
 menu "Loadable module support"
 
@@ -340,6 +451,18 @@ config MODVERSIONS
          make them incompatible with the kernel you are running.  If
          unsure, say N.
 
          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
 config KMOD
        bool "Automatic kernel module loading"
        depends on MODULES