[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080219152117.GF27352@tull.net>
Date: Wed, 20 Feb 2008 02:21:17 +1100
From: Nick Andrew <nick@...k-andrew.net>
To: trivial@...nel.org
Cc: linux-kernel@...r.kernel.org
Subject: Improve init/Kconfig help descriptions [PATCH 8/9]
On Wed, Feb 20, 2008 at 01:06:09AM +1100, Nick Andrew wrote:
> Here is a series of 9 patches to init/Kconfig intended to improve the
> usefulness and consistency of the help descriptions. The patches are
> against linux-2.6.24.2.
> [...]
> Patch 8
> SLUB_DEBUG
> SLAB
> SLUB
> SLOB
Changelog:
Improve usefulness and consistency of kernel configuration help messages.
Signed-off-by: Nick Andrew <nick@...k-andrew.net>
--- a/init/Kconfig 2008-02-20 00:45:07.000000000 +1100
+++ b/init/Kconfig 2008-02-20 00:52:07.000000000 +1100
@@ -616,31 +616,48 @@ config SLUB_DEBUG
bool "Enable SLUB debugging support" if EMBEDDED
depends on SLUB
help
+ Enable debugging on the "SLUB" slab allocator.
+
SLUB has extensive debug support features. Disabling these can
result in significant savings in code size. This also disables
SLUB sysfs support. /sys/slab will not exist and there will be
no support for cache validation etc.
+ If unsure, say N.
+
choice
prompt "Choose SLAB allocator"
default SLUB
help
- This option allows to select a slab allocator.
+ This option selects a slab allocator.
+
+ A slab is a contiguous area of kernel memory. Slabs are of
+ fixed size (1 or more times the page size) and are used as
+ the container for allocation of kernel data structures. This
+ reduces memory fragmentation and makes allocation very fast,
+ improving kernel performance.
+
+ "SLUB" is the default slab allocator.
+
+ See wikipedia:Slab_allocation for more details.
config SLAB
bool "SLAB"
help
- The regular slab allocator that is established and known to work
- well in all environments. It organizes cache hot objects in
- per cpu and per node queues. SLAB is the default choice for
- a slab allocator.
+ SLAB is the original slab allocator that is established and
+ known to work well in all environments. It organizes cache
+ hot objects in per-CPU and per-node queues.
+
+ SLAB has been superseded by SLUB.
config SLUB
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
+ instead of managing queues of cached objects (the SLAB
+ approach).
+
+ Per-CPU caching is realized using slabs of objects instead
of queues of objects. SLUB can use memory efficiently
and has enhanced diagnostics.
@@ -648,11 +665,14 @@ config SLOB
depends on EMBEDDED
bool "SLOB (Simple Allocator)"
help
- SLOB replaces the SLAB allocator with a drastically simpler
- allocator. SLOB is more space efficient than SLAB but does not
- scale well (single lock for all operations) and is also highly
- susceptible to fragmentation. SLUB can accomplish a higher object
- density. It is usually better to use SLUB instead of SLOB.
+ SLOB is a drastically simpler allocator for use in embedded
+ systems.
+
+ SLOB is more space efficient than SLAB but does not scale well
+ (it uses a single lock for all operations) and is also highly
+ susceptible to fragmentation. SLUB can accomplish a higher
+ object density. It is usually better to use SLUB instead
+ of SLOB.
endchoice
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists