diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/kmemleak.h | 4 | ||||
| -rw-r--r-- | include/linux/slub_def.h | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/kmemleak.h b/include/linux/kmemleak.h index 7796aed6cdd5..6a63807f714e 100644 --- a/include/linux/kmemleak.h +++ b/include/linux/kmemleak.h | |||
| @@ -27,6 +27,7 @@ extern void kmemleak_init(void); | |||
| 27 | extern void kmemleak_alloc(const void *ptr, size_t size, int min_count, | 27 | extern void kmemleak_alloc(const void *ptr, size_t size, int min_count, |
| 28 | gfp_t gfp); | 28 | gfp_t gfp); |
| 29 | extern void kmemleak_free(const void *ptr); | 29 | extern void kmemleak_free(const void *ptr); |
| 30 | extern void kmemleak_free_part(const void *ptr, size_t size); | ||
| 30 | extern void kmemleak_padding(const void *ptr, unsigned long offset, | 31 | extern void kmemleak_padding(const void *ptr, unsigned long offset, |
| 31 | size_t size); | 32 | size_t size); |
| 32 | extern void kmemleak_not_leak(const void *ptr); | 33 | extern void kmemleak_not_leak(const void *ptr); |
| @@ -71,6 +72,9 @@ static inline void kmemleak_alloc_recursive(const void *ptr, size_t size, | |||
| 71 | static inline void kmemleak_free(const void *ptr) | 72 | static inline void kmemleak_free(const void *ptr) |
| 72 | { | 73 | { |
| 73 | } | 74 | } |
| 75 | static inline void kmemleak_free_part(const void *ptr, size_t size) | ||
| 76 | { | ||
| 77 | } | ||
| 74 | static inline void kmemleak_free_recursive(const void *ptr, unsigned long flags) | 78 | static inline void kmemleak_free_recursive(const void *ptr, unsigned long flags) |
| 75 | { | 79 | { |
| 76 | } | 80 | } |
diff --git a/include/linux/slub_def.h b/include/linux/slub_def.h index 4dcbc2c71491..c1c862b1d01a 100644 --- a/include/linux/slub_def.h +++ b/include/linux/slub_def.h | |||
| @@ -11,6 +11,7 @@ | |||
| 11 | #include <linux/workqueue.h> | 11 | #include <linux/workqueue.h> |
| 12 | #include <linux/kobject.h> | 12 | #include <linux/kobject.h> |
| 13 | #include <linux/kmemtrace.h> | 13 | #include <linux/kmemtrace.h> |
| 14 | #include <linux/kmemleak.h> | ||
| 14 | 15 | ||
| 15 | enum stat_item { | 16 | enum stat_item { |
| 16 | ALLOC_FASTPATH, /* Allocation from cpu slab */ | 17 | ALLOC_FASTPATH, /* Allocation from cpu slab */ |
| @@ -233,6 +234,7 @@ static __always_inline void *kmalloc_large(size_t size, gfp_t flags) | |||
| 233 | unsigned int order = get_order(size); | 234 | unsigned int order = get_order(size); |
| 234 | void *ret = (void *) __get_free_pages(flags | __GFP_COMP, order); | 235 | void *ret = (void *) __get_free_pages(flags | __GFP_COMP, order); |
| 235 | 236 | ||
| 237 | kmemleak_alloc(ret, size, 1, flags); | ||
| 236 | trace_kmalloc(_THIS_IP_, ret, size, PAGE_SIZE << order, flags); | 238 | trace_kmalloc(_THIS_IP_, ret, size, PAGE_SIZE << order, flags); |
| 237 | 239 | ||
| 238 | return ret; | 240 | return ret; |
