X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=init%2FKconfig;h=6dd338705e0a099b965a105e74513a3e2b23ae8b;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=3f83eb24204959a971d2444d0286b753df9a6a3d;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/init/Kconfig b/init/Kconfig index 3f83eb242..6dd338705 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -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 ) 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