diff options
Diffstat (limited to 'include/linux/slab.h')
-rw-r--r-- | include/linux/slab.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/include/linux/slab.h b/include/linux/slab.h index f9ed9346bfd6..67425c277e12 100644 --- a/include/linux/slab.h +++ b/include/linux/slab.h | |||
@@ -32,6 +32,7 @@ typedef struct kmem_cache kmem_cache_t __deprecated; | |||
32 | #define SLAB_PANIC 0x00040000UL /* Panic if kmem_cache_create() fails */ | 32 | #define SLAB_PANIC 0x00040000UL /* Panic if kmem_cache_create() fails */ |
33 | #define SLAB_DESTROY_BY_RCU 0x00080000UL /* Defer freeing slabs to RCU */ | 33 | #define SLAB_DESTROY_BY_RCU 0x00080000UL /* Defer freeing slabs to RCU */ |
34 | #define SLAB_MEM_SPREAD 0x00100000UL /* Spread some memory over cpuset */ | 34 | #define SLAB_MEM_SPREAD 0x00100000UL /* Spread some memory over cpuset */ |
35 | #define SLAB_TRACE 0x00200000UL /* Trace allocations and frees */ | ||
35 | 36 | ||
36 | /* Flags passed to a constructor functions */ | 37 | /* Flags passed to a constructor functions */ |
37 | #define SLAB_CTOR_CONSTRUCTOR 0x001UL /* If not set, then deconstructor */ | 38 | #define SLAB_CTOR_CONSTRUCTOR 0x001UL /* If not set, then deconstructor */ |
@@ -42,7 +43,7 @@ typedef struct kmem_cache kmem_cache_t __deprecated; | |||
42 | * struct kmem_cache related prototypes | 43 | * struct kmem_cache related prototypes |
43 | */ | 44 | */ |
44 | void __init kmem_cache_init(void); | 45 | void __init kmem_cache_init(void); |
45 | extern int slab_is_available(void); | 46 | int slab_is_available(void); |
46 | 47 | ||
47 | struct kmem_cache *kmem_cache_create(const char *, size_t, size_t, | 48 | struct kmem_cache *kmem_cache_create(const char *, size_t, size_t, |
48 | unsigned long, | 49 | unsigned long, |
@@ -95,9 +96,14 @@ static inline void *kcalloc(size_t n, size_t size, gfp_t flags) | |||
95 | * the appropriate general cache at compile time. | 96 | * the appropriate general cache at compile time. |
96 | */ | 97 | */ |
97 | 98 | ||
98 | #ifdef CONFIG_SLAB | 99 | #if defined(CONFIG_SLAB) || defined(CONFIG_SLUB) |
100 | #ifdef CONFIG_SLUB | ||
101 | #include <linux/slub_def.h> | ||
102 | #else | ||
99 | #include <linux/slab_def.h> | 103 | #include <linux/slab_def.h> |
104 | #endif /* !CONFIG_SLUB */ | ||
100 | #else | 105 | #else |
106 | |||
101 | /* | 107 | /* |
102 | * Fallback definitions for an allocator not wanting to provide | 108 | * Fallback definitions for an allocator not wanting to provide |
103 | * its own optimized kmalloc definitions (like SLOB). | 109 | * its own optimized kmalloc definitions (like SLOB). |
@@ -184,7 +190,7 @@ static inline void *__kmalloc_node(size_t size, gfp_t flags, int node) | |||
184 | * allocator where we care about the real place the memory allocation | 190 | * allocator where we care about the real place the memory allocation |
185 | * request comes from. | 191 | * request comes from. |
186 | */ | 192 | */ |
187 | #ifdef CONFIG_DEBUG_SLAB | 193 | #if defined(CONFIG_DEBUG_SLAB) || defined(CONFIG_SLUB) |
188 | extern void *__kmalloc_track_caller(size_t, gfp_t, void*); | 194 | extern void *__kmalloc_track_caller(size_t, gfp_t, void*); |
189 | #define kmalloc_track_caller(size, flags) \ | 195 | #define kmalloc_track_caller(size, flags) \ |
190 | __kmalloc_track_caller(size, flags, __builtin_return_address(0)) | 196 | __kmalloc_track_caller(size, flags, __builtin_return_address(0)) |
@@ -202,7 +208,7 @@ extern void *__kmalloc_track_caller(size_t, gfp_t, void*); | |||
202 | * standard allocator where we care about the real place the memory | 208 | * standard allocator where we care about the real place the memory |
203 | * allocation request comes from. | 209 | * allocation request comes from. |
204 | */ | 210 | */ |
205 | #ifdef CONFIG_DEBUG_SLAB | 211 | #if defined(CONFIG_DEBUG_SLAB) || defined(CONFIG_SLUB) |
206 | extern void *__kmalloc_node_track_caller(size_t, gfp_t, int, void *); | 212 | extern void *__kmalloc_node_track_caller(size_t, gfp_t, int, void *); |
207 | #define kmalloc_node_track_caller(size, flags, node) \ | 213 | #define kmalloc_node_track_caller(size, flags, node) \ |
208 | __kmalloc_node_track_caller(size, flags, node, \ | 214 | __kmalloc_node_track_caller(size, flags, node, \ |