vserver 1.9.5.x5
[linux-2.6.git] / init / Kconfig
index 3f83eb2..6dd3387 100644 (file)
@@ -50,6 +50,11 @@ config BROKEN_ON_SMP
        depends on BROKEN || !SMP
        default y
 
+config LOCK_KERNEL
+       bool
+       depends on SMP || PREEMPT
+       default y
+
 endmenu
 
 menu "General setup"
@@ -171,7 +176,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
@@ -190,20 +195,28 @@ 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"
@@ -278,8 +291,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" if EMBEDDED
        default y if ARM || H8300
@@ -294,8 +305,9 @@ config CC_OPTIMIZE_FOR_SIZE
          If unsure, say N.
 
 config SHMEM
+       bool "Use full shmem filesystem" if EMBEDDED
        default y
-       bool "Use full shmem filesystem" if EMBEDDED && MMU
+       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
@@ -303,6 +315,43 @@ config SHMEM
          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
@@ -361,7 +410,7 @@ config OBSOLETE_MODPARM
 
 config MODVERSIONS
        bool "Module versioning support (EXPERIMENTAL)"
-       depends on MODULES && EXPERIMENTAL
+       depends on MODULES && EXPERIMENTAL && !USERMODE
        help
          Usually, you have to use modules compiled with your kernel.
          Saying Y here makes it sometimes possible to use modules
@@ -370,6 +419,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