]> err.no Git - linux-2.6/blobdiff - init/Kconfig
Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw
[linux-2.6] / init / Kconfig
index f977086e118a9ee936a4fd77e3cb5490857b7624..ebe04f56d8343b980814b5ee551cc7f62242e282 100644 (file)
@@ -80,16 +80,20 @@ config LOCALVERSION_AUTO
        default y
        help
          This will try to automatically determine if the current tree is a
        default y
        help
          This will try to automatically determine if the current tree is a
-         release tree by looking for git tags that
-         belong to the current top of tree revision.
+         release tree by looking for git tags that belong to the current
+         top of tree revision.
 
          A string of the format -gxxxxxxxx will be added to the localversion
 
          A string of the format -gxxxxxxxx will be added to the localversion
-         if a git based tree is found.  The string generated by this will be
+         if a git-based tree is found.  The string generated by this will be
          appended after any matching localversion* files, and after the value
          appended after any matching localversion* files, and after the value
-         set in CONFIG_LOCALVERSION
+         set in CONFIG_LOCALVERSION.
 
 
-         Note: This requires Perl, and a git repository, but not necessarily
-         the git or cogito tools to be installed.
+         (The actual string used here is the first eight characters produced
+         by running the command:
+
+           $ git rev-parse --verify HEAD
+
+         which is done within the script "scripts/setlocalversion".)
 
 config SWAP
        bool "Support for paging of anonymous memory (swap)"
 
 config SWAP
        bool "Support for paging of anonymous memory (swap)"
@@ -304,6 +308,22 @@ config RELAY
 
          If unsure, say N.
 
 
          If unsure, say N.
 
+config BLK_DEV_INITRD
+       bool "Initial RAM filesystem and RAM disk (initramfs/initrd) support"
+       depends on BROKEN || !FRV
+       help
+         The initial RAM filesystem is a ramfs which is loaded by the
+         boot loader (loadlin or lilo) and that is mounted as root
+         before the normal boot procedure. It is typically used to
+         load modules needed to mount the "real" root file system,
+         etc. See <file:Documentation/initrd.txt> for details.
+
+         If RAM disk support (BLK_DEV_RAM) is also included, this
+         also enables initial RAM disk (initrd) support and adds
+         15 Kbytes (more on some other architectures) to the kernel size.
+
+         If unsure say Y.
+
 if BLK_DEV_INITRD
 
 source "usr/Kconfig"
 if BLK_DEV_INITRD
 
 source "usr/Kconfig"
@@ -336,7 +356,7 @@ menuconfig EMBEDDED
 
 config UID16
        bool "Enable 16-bit UID system calls" if EMBEDDED
 
 config UID16
        bool "Enable 16-bit UID system calls" if EMBEDDED
-       depends on ARM || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && SPARC32_COMPAT) || UML || (X86_64 && IA32_EMULATION)
+       depends on ARM || BFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && SPARC32_COMPAT) || UML || (X86_64 && IA32_EMULATION)
        default y
        help
          This enables the legacy 16-bit UID syscall wrappers.
        default y
        help
          This enables the legacy 16-bit UID syscall wrappers.
@@ -458,15 +478,6 @@ config SHMEM
          option replaces shmem and tmpfs with the much simpler ramfs code,
          which may be appropriate on small systems without swap.
 
          option replaces shmem and tmpfs with the much simpler ramfs code,
          which may be appropriate on small systems without swap.
 
-config SLAB
-       default y
-       bool "Use full SLAB allocator" if (EMBEDDED && !SMP && !SPARSEMEM)
-       help
-         Disabling this replaces the advanced SLAB allocator and
-         kmalloc support with the drastically simpler SLOB allocator.
-         SLOB is more space efficient but does not scale well and is
-         more susceptible to fragmentation.
-
 config VM_EVENT_COUNTERS
        default y
        bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
 config VM_EVENT_COUNTERS
        default y
        bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
@@ -476,6 +487,46 @@ config VM_EVENT_COUNTERS
          on EMBEDDED systems.  /proc/vmstat will only show page counts
          if VM event counters are disabled.
 
          on EMBEDDED systems.  /proc/vmstat will only show page counts
          if VM event counters are disabled.
 
+choice
+       prompt "Choose SLAB allocator"
+       default SLAB
+       help
+          This option allows to select a slab allocator.
+
+config SLAB
+       bool "SLAB"
+       help
+         The regular slab allocator that is established and known to work
+         well in all environments. It organizes chache hot objects in
+         per cpu and per node queues. SLAB is the default choice for
+         slab allocator.
+
+config SLUB
+       depends on EXPERIMENTAL && !ARCH_USES_SLAB_PAGE_STRUCT
+       bool "SLUB (Unqueued Allocator)"
+       help
+          SLUB is a slab allocator that minimizes cache line usage
+          instead of managing queues of cached objects (SLAB approach).
+          Per cpu caching is realized using slabs of objects instead
+          of queues of objects. SLUB can use memory efficiently
+          way and has enhanced diagnostics.
+
+config SLOB
+#
+#      SLOB cannot support SMP because SLAB_DESTROY_BY_RCU does not work
+#      properly.
+#
+       depends on EMBEDDED && !SMP && !SPARSEMEM
+       bool "SLOB (Simple Allocator)"
+       help
+          SLOB replaces the SLAB allocator with a drastically simpler
+          allocator.  SLOB is more space efficient that SLAB but does not
+          scale well (single lock for all operations) and is more susceptible
+          to fragmentation. SLOB it is a great choice to reduce
+          memory usage and code size for embedded systems.
+
+endchoice
+
 endmenu                # General setup
 
 config RT_MUTEXES
 endmenu                # General setup
 
 config RT_MUTEXES
@@ -491,10 +542,6 @@ config BASE_SMALL
        default 0 if BASE_FULL
        default 1 if !BASE_FULL
 
        default 0 if BASE_FULL
        default 1 if !BASE_FULL
 
-config SLOB
-       default !SLAB
-       bool
-
 menu "Loadable module support"
 
 config MODULES
 menu "Loadable module support"
 
 config MODULES