1#ifndef MM_SLAB_H
2#define MM_SLAB_H
3
4
5
6
7
8
9
10
11
12
13
14
15enum slab_state {
16 DOWN,
17 PARTIAL,
18 PARTIAL_ARRAYCACHE,
19 PARTIAL_L3,
20 UP,
21 FULL
22};
23
24extern enum slab_state slab_state;
25
26
27extern struct mutex slab_mutex;
28
29
30extern struct list_head slab_caches;
31
32
33extern struct kmem_cache *kmem_cache;
34
35
36extern int __kmem_cache_create(struct kmem_cache *, unsigned long flags);
37
38#ifdef CONFIG_SLUB
39struct kmem_cache *__kmem_cache_alias(const char *name, size_t size,
40 size_t align, unsigned long flags, void (*ctor)(void *));
41#else
42static inline struct kmem_cache *__kmem_cache_alias(const char *name, size_t size,
43 size_t align, unsigned long flags, void (*ctor)(void *))
44{ return NULL; }
45#endif
46
47
48int __kmem_cache_shutdown(struct kmem_cache *);
49
50#endif
51