|author||Nick Piggin <email@example.com>||2007-05-16 22:10:49 -0700|
|committer||Linus Torvalds <firstname.lastname@example.org>||2007-05-17 05:23:02 -0700|
slob: implement RCU freeing
The SLOB allocator should implement SLAB_DESTROY_BY_RCU correctly, because even on UP, RCU freeing semantics are not equivalent to simply freeing immediately. This also allows SLOB to be used on SMP. Signed-off-by: Nick Piggin <email@example.com> Acked-by: Matt Mackall <firstname.lastname@example.org> Signed-off-by: Andrew Morton <email@example.com> Signed-off-by: Linus Torvalds <firstname.lastname@example.org>
Diffstat (limited to 'init')
1 files changed, 2 insertions, 5 deletions
diff --git a/init/Kconfig b/init/Kconfig
index 4e009fde4b6..9264895ab33 100644
@@ -577,14 +577,11 @@ config SLUB
and has enhanced diagnostics.
-# SLOB does not support SMP because SLAB_DESTROY_BY_RCU is unsupported
- depends on EMBEDDED && !SMP && !SPARSEMEM
+ depends on EMBEDDED && !SPARSEMEM
bool "SLOB (Simple Allocator)"
SLOB replaces the SLAB allocator with a drastically simpler
- allocator. SLOB is more space efficient that SLAB but does not
+ 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.