diff options
author | Nick Piggin <nickpiggin@yahoo.com.au> | 2007-05-17 01:10:49 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-17 08:23:02 -0400 |
commit | afc0cedbe9138e3e8b38bfa1e4dfd01a2c537d62 (patch) | |
tree | 0df03f95645ef76a387dd541da062b682319c921 /init | |
parent | b2cd64153b94473f6bd82448a68b8e8c041676ea (diff) |
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 <npiggin@suse.de>
Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/init/Kconfig b/init/Kconfig index 4e009fde4b69..9264895ab331 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -577,14 +577,11 @@ config SLUB | |||
577 | and has enhanced diagnostics. | 577 | and has enhanced diagnostics. |
578 | 578 | ||
579 | config SLOB | 579 | config SLOB |
580 | # | 580 | depends on EMBEDDED && !SPARSEMEM |
581 | # SLOB does not support SMP because SLAB_DESTROY_BY_RCU is unsupported | ||
582 | # | ||
583 | depends on EMBEDDED && !SMP && !SPARSEMEM | ||
584 | bool "SLOB (Simple Allocator)" | 581 | bool "SLOB (Simple Allocator)" |
585 | help | 582 | help |
586 | SLOB replaces the SLAB allocator with a drastically simpler | 583 | SLOB replaces the SLAB allocator with a drastically simpler |
587 | allocator. SLOB is more space efficient that SLAB but does not | 584 | allocator. SLOB is more space efficient than SLAB but does not |
588 | scale well (single lock for all operations) and is also highly | 585 | scale well (single lock for all operations) and is also highly |
589 | susceptible to fragmentation. SLUB can accomplish a higher object | 586 | susceptible to fragmentation. SLUB can accomplish a higher object |
590 | density. It is usually better to use SLUB instead of SLOB. | 587 | density. It is usually better to use SLUB instead of SLOB. |