diff --git a/init/Kconfig b/init/Kconfig index d9d878a3bb46835e1f2c4301620975e05757ee1d..63d52a089a9e72a50b33c1b1bbf52c1e19b1769f 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -576,7 +576,7 @@ config SLUB and has enhanced diagnostics. config SLOB - depends on EMBEDDED && !SPARSEMEM + depends on EMBEDDED bool "SLOB (Simple Allocator)" help SLOB replaces the SLAB allocator with a drastically simpler diff --git a/mm/slob.c b/mm/slob.c index b99b0ef2347e31e386eb69b7dc969eabee539296..b4899079d8b00e32660f8c36437c3b558bef4823 100644 --- a/mm/slob.c +++ b/mm/slob.c @@ -634,6 +634,14 @@ int kmem_ptr_validate(struct kmem_cache *a, const void *b) return 0; } +static unsigned int slob_ready __read_mostly; + +int slab_is_available(void) +{ + return slob_ready; +} + void __init kmem_cache_init(void) { + slob_ready = 1; }