Merge branch 'nohz/printk-v8' into irq/core
[sfrench/cifs-2.6.git] / include / linux / slob_def.h
1 #ifndef __LINUX_SLOB_DEF_H
2 #define __LINUX_SLOB_DEF_H
3
4 #include <linux/numa.h>
5
6 void *kmem_cache_alloc_node(struct kmem_cache *, gfp_t flags, int node);
7
8 static __always_inline void *kmem_cache_alloc(struct kmem_cache *cachep,
9                                               gfp_t flags)
10 {
11         return kmem_cache_alloc_node(cachep, flags, NUMA_NO_NODE);
12 }
13
14 void *__kmalloc_node(size_t size, gfp_t flags, int node);
15
16 static __always_inline void *kmalloc_node(size_t size, gfp_t flags, int node)
17 {
18         return __kmalloc_node(size, flags, node);
19 }
20
21 /**
22  * kmalloc - allocate memory
23  * @size: how many bytes of memory are required.
24  * @flags: the type of memory to allocate (see kcalloc).
25  *
26  * kmalloc is the normal method of allocating memory
27  * in the kernel.
28  */
29 static __always_inline void *kmalloc(size_t size, gfp_t flags)
30 {
31         return __kmalloc_node(size, flags, NUMA_NO_NODE);
32 }
33
34 static __always_inline void *__kmalloc(size_t size, gfp_t flags)
35 {
36         return kmalloc(size, flags);
37 }
38
39 #endif /* __LINUX_SLOB_DEF_H */