let LOG_BUF_SHIFT default to 17
[safe/jmp/linux-2.6] / init / Kconfig
index 2a6499d..e037a5a 100644 (file)
@@ -214,18 +214,6 @@ config TASK_IO_ACCOUNTING
 
          Say N if unsure.
 
-config PID_NS
-       bool "PID Namespaces (EXPERIMENTAL)"
-       default n
-       depends on EXPERIMENTAL
-       help
-         Suport process id namespaces.  This allows having multiple
-         process with the same pid as long as they are in different
-         pid namespaces.  This is a building block of containers.
-
-         Unless you want to work with an experimental feature
-         say N here.
-
 config AUDIT
        bool "Auditing support"
        depends on NET
@@ -271,17 +259,14 @@ config IKCONFIG_PROC
 config LOG_BUF_SHIFT
        int "Kernel log buffer size (16 => 64KB, 17 => 128KB)"
        range 12 21
-       default 17 if S390 || LOCKDEP
-       default 16 if X86_NUMAQ || IA64
-       default 15 if SMP
-       default 14
+       default 17
        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
+         Examples:
+                    17 => 128 KB
+                    16 => 64 KB
+                    15 => 32 KB
+                    14 => 16 KB
                     13 =>  8 KB
                     12 =>  4 KB
 
@@ -323,25 +308,43 @@ config CPUSETS
 
          Say N if unsure.
 
-config FAIR_GROUP_SCHED
-       bool "Fair group CPU scheduler"
+config GROUP_SCHED
+       bool "Group CPU scheduler"
        default y
        help
          This feature lets CPU scheduler recognize task groups and control CPU
          bandwidth allocation to such task groups.
 
+config FAIR_GROUP_SCHED
+       bool "Group scheduling for SCHED_OTHER"
+       depends on GROUP_SCHED
+       default y
+
+config RT_GROUP_SCHED
+       bool "Group scheduling for SCHED_RR/FIFO"
+       depends on EXPERIMENTAL
+       depends on GROUP_SCHED
+       default n
+       help
+         This feature lets you explicitly allocate real CPU bandwidth
+         to users or control groups (depending on the "Basis for grouping tasks"
+         setting below. If enabled, it will also make it impossible to
+         schedule realtime tasks for non-root users until you allocate
+         realtime bandwidth for them.
+         See Documentation/sched-rt-group.txt for more information.
+
 choice
-       depends on FAIR_GROUP_SCHED
+       depends on GROUP_SCHED
        prompt "Basis for grouping tasks"
-       default FAIR_USER_SCHED
+       default USER_SCHED
 
-config FAIR_USER_SCHED
+config USER_SCHED
        bool "user id"
        help
          This option will choose userid as the basis for grouping
          tasks, thus providing equal CPU bandwidth to each user.
 
-config FAIR_CGROUP_SCHED
+config CGROUP_SCHED
        bool "Control groups"
        depends on CGROUPS
        help
@@ -367,10 +370,29 @@ config RESOURCE_COUNTERS
           infrastructure that works with cgroups
        depends on CGROUPS
 
+config CGROUP_MEM_RES_CTLR
+       bool "Memory Resource Controller for Control Groups"
+       depends on CGROUPS && RESOURCE_COUNTERS
+       help
+         Provides a memory resource controller that manages both page cache and
+         RSS memory.
+
+         Note that setting this option increases fixed memory overhead
+         associated with each page of memory in the system by 4/8 bytes
+         and also increases cache misses because struct page on many 64bit
+         systems will not fit into a single cache line anymore.
+
+         Only enable when you're ok with these trade offs and really
+         sure you need the memory resource controller.
+
 config SYSFS_DEPRECATED
+       bool
+
+config SYSFS_DEPRECATED_V2
        bool "Create deprecated sysfs files"
        depends on SYSFS
        default y
+       select SYSFS_DEPRECATED
        help
          This option creates deprecated symlinks such as the
          "device"-link, the <subsystem>:<name>-link, and the
@@ -383,17 +405,11 @@ config SYSFS_DEPRECATED
 
          If enabled, this option will also move any device structures
          that belong to a class, back into the /sys/class hierarchy, in
-         order to support older versions of udev.
+         order to support older versions of udev and some userspace
+         programs.
 
-         If you are using a distro that was released in 2006 or later,
-         it should be safe to say N here.
-
-config CGROUP_MEM_CONT
-       bool "Memory controller for cgroups"
-       depends on CGROUPS && RESOURCE_COUNTERS
-       help
-         Provides a memory controller that manages both page cache and
-         RSS memory.
+         If you are using a distro with the most recent userspace
+         packages, it should be safe to say N here.
 
 config PROC_PID_CPUSET
        bool "Include legacy /proc/<pid>/cpuset file"
@@ -442,6 +458,18 @@ config USER_NS
          to provide different user info for different servers.
          If unsure, say N.
 
+config PID_NS
+       bool "PID Namespaces (EXPERIMENTAL)"
+       default n
+       depends on NAMESPACES && EXPERIMENTAL
+       help
+         Suport process id namespaces.  This allows having multiple
+         process with the same pid as long as they are in different
+         pid namespaces.  This is a building block of containers.
+
+         Unless you want to work with an experimental feature
+         say N here.
+
 config BLK_DEV_INITRD
        bool "Initial RAM filesystem and RAM disk (initramfs/initrd) support"
        depends on BROKEN || !FRV
@@ -465,16 +493,12 @@ source "usr/Kconfig"
 endif
 
 config CC_OPTIMIZE_FOR_SIZE
-       bool "Optimize for size (Look out for broken compilers!)"
+       bool "Optimize for size"
        default y
-       depends on ARM || H8300 || SUPERH || EXPERIMENTAL
        help
          Enabling this option will pass "-Os" instead of "-O2" to gcc
          resulting in a smaller kernel.
 
-         WARNING: some versions of gcc may generate incorrect code with this
-         option.  If problems are observed, a gcc upgrade may be needed.
-
          If unsure, say N.
 
 config SYSCTL
@@ -490,7 +514,7 @@ menuconfig EMBEDDED
 
 config UID16
        bool "Enable 16-bit UID system calls" if EMBEDDED
-       depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && SPARC32_COMPAT) || UML || (X86_64 && IA32_EMULATION)
+       depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && COMPAT) || UML || (X86_64 && IA32_EMULATION)
        default y
        help
          This enables the legacy 16-bit UID syscall wrappers.
@@ -587,7 +611,7 @@ config COMPAT_BRK
          disabled, and can be overriden runtime by setting
          /proc/sys/kernel/randomize_va_space to 2.
 
-         On non-ancient distros (post-2000 ones) Y is usually a safe choice.
+         On non-ancient distros (post-2000 ones) N is usually a safe choice.
 
 config BASE_FULL
        default y
@@ -739,7 +763,7 @@ endmenu             # General setup
 config SLABINFO
        bool
        depends on PROC_FS
-       depends on SLAB || SLUB
+       depends on SLAB || SLUB_DEBUG
        default y
 
 config RT_MUTEXES
@@ -841,38 +865,10 @@ source "block/Kconfig"
 config PREEMPT_NOTIFIERS
        bool
 
-choice
-       prompt "RCU implementation type:"
-       default CLASSIC_RCU
-       help
-         This allows you to choose either the classic RCU implementation
-         that is designed for best read-side performance on non-realtime
-         systems, or the preemptible RCU implementation for best latency
-         on realtime systems.  Note that some kernel preemption modes
-         will restrict your choice.
-
-         Select the default if you are unsure.
-
 config CLASSIC_RCU
-       bool "Classic RCU"
+       def_bool !PREEMPT_RCU
        help
          This option selects the classic RCU implementation that is
          designed for best read-side performance on non-realtime
-         systems.
-
-         Say Y if you are unsure.
-
-config PREEMPT_RCU
-       bool "Preemptible RCU"
-       depends on PREEMPT
-       help
-         This option reduces the latency of the kernel by making certain
-         RCU sections preemptible. Normally RCU code is non-preemptible, if
-         this option is selected then read-only RCU sections become
-         preemptible. This helps latency, but may expose bugs due to
-         now-naive assumptions about each RCU read-side critical section
-         remaining on a given CPU through its execution.
-
-         Say N if you are unsure.
-
-endchoice
+         systems.  Classic RCU is the default.  Note that the
+         PREEMPT_RCU symbol is used to select/deselect this option.