diff options
Diffstat (limited to 'mm/slab.h')
-rw-r--r-- | mm/slab.h | 23 |
1 files changed, 19 insertions, 4 deletions
@@ -43,12 +43,15 @@ extern struct kmem_cache *create_kmalloc_cache(const char *name, size_t size, | |||
43 | extern void create_boot_cache(struct kmem_cache *, const char *name, | 43 | extern void create_boot_cache(struct kmem_cache *, const char *name, |
44 | size_t size, unsigned long flags); | 44 | size_t size, unsigned long flags); |
45 | 45 | ||
46 | struct mem_cgroup; | ||
46 | #ifdef CONFIG_SLUB | 47 | #ifdef CONFIG_SLUB |
47 | struct kmem_cache *__kmem_cache_alias(const char *name, size_t size, | 48 | struct kmem_cache * |
48 | size_t align, unsigned long flags, void (*ctor)(void *)); | 49 | __kmem_cache_alias(struct mem_cgroup *memcg, const char *name, size_t size, |
50 | size_t align, unsigned long flags, void (*ctor)(void *)); | ||
49 | #else | 51 | #else |
50 | static inline struct kmem_cache *__kmem_cache_alias(const char *name, size_t size, | 52 | static inline struct kmem_cache * |
51 | size_t align, unsigned long flags, void (*ctor)(void *)) | 53 | __kmem_cache_alias(struct mem_cgroup *memcg, const char *name, size_t size, |
54 | size_t align, unsigned long flags, void (*ctor)(void *)) | ||
52 | { return NULL; } | 55 | { return NULL; } |
53 | #endif | 56 | #endif |
54 | 57 | ||
@@ -106,11 +109,23 @@ static inline bool is_root_cache(struct kmem_cache *s) | |||
106 | { | 109 | { |
107 | return !s->memcg_params || s->memcg_params->is_root_cache; | 110 | return !s->memcg_params || s->memcg_params->is_root_cache; |
108 | } | 111 | } |
112 | |||
113 | static inline bool cache_match_memcg(struct kmem_cache *cachep, | ||
114 | struct mem_cgroup *memcg) | ||
115 | { | ||
116 | return (is_root_cache(cachep) && !memcg) || | ||
117 | (cachep->memcg_params->memcg == memcg); | ||
118 | } | ||
109 | #else | 119 | #else |
110 | static inline bool is_root_cache(struct kmem_cache *s) | 120 | static inline bool is_root_cache(struct kmem_cache *s) |
111 | { | 121 | { |
112 | return true; | 122 | return true; |
113 | } | 123 | } |
114 | 124 | ||
125 | static inline bool cache_match_memcg(struct kmem_cache *cachep, | ||
126 | struct mem_cgroup *memcg) | ||
127 | { | ||
128 | return true; | ||
129 | } | ||
115 | #endif | 130 | #endif |
116 | #endif | 131 | #endif |