123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- #ifndef LINUX_KMEMCHECK_H
- #define LINUX_KMEMCHECK_H
- #include <linux/mm_types.h>
- #include <linux/types.h>
- #ifdef CONFIG_KMEMCHECK
- extern int kmemcheck_enabled;
- /* The slab-related functions. */
- void kmemcheck_alloc_shadow(struct page *page, int order, gfp_t flags, int node);
- void kmemcheck_free_shadow(struct page *page, int order);
- void kmemcheck_slab_alloc(struct kmem_cache *s, gfp_t gfpflags, void *object,
- size_t size);
- void kmemcheck_slab_free(struct kmem_cache *s, void *object, size_t size);
- void kmemcheck_pagealloc_alloc(struct page *p, unsigned int order,
- gfp_t gfpflags);
- void kmemcheck_show_pages(struct page *p, unsigned int n);
- void kmemcheck_hide_pages(struct page *p, unsigned int n);
- bool kmemcheck_page_is_tracked(struct page *p);
- void kmemcheck_mark_unallocated(void *address, unsigned int n);
- void kmemcheck_mark_uninitialized(void *address, unsigned int n);
- void kmemcheck_mark_initialized(void *address, unsigned int n);
- void kmemcheck_mark_freed(void *address, unsigned int n);
- void kmemcheck_mark_unallocated_pages(struct page *p, unsigned int n);
- void kmemcheck_mark_uninitialized_pages(struct page *p, unsigned int n);
- void kmemcheck_mark_initialized_pages(struct page *p, unsigned int n);
- int kmemcheck_show_addr(unsigned long address);
- int kmemcheck_hide_addr(unsigned long address);
- #else
- #define kmemcheck_enabled 0
- static inline void
- kmemcheck_alloc_shadow(struct page *page, int order, gfp_t flags, int node)
- {
- }
- static inline void
- kmemcheck_free_shadow(struct page *page, int order)
- {
- }
- static inline void
- kmemcheck_slab_alloc(struct kmem_cache *s, gfp_t gfpflags, void *object,
- size_t size)
- {
- }
- static inline void kmemcheck_slab_free(struct kmem_cache *s, void *object,
- size_t size)
- {
- }
- static inline void kmemcheck_pagealloc_alloc(struct page *p,
- unsigned int order, gfp_t gfpflags)
- {
- }
- static inline bool kmemcheck_page_is_tracked(struct page *p)
- {
- return false;
- }
- static inline void kmemcheck_mark_unallocated(void *address, unsigned int n)
- {
- }
- static inline void kmemcheck_mark_uninitialized(void *address, unsigned int n)
- {
- }
- static inline void kmemcheck_mark_initialized(void *address, unsigned int n)
- {
- }
- static inline void kmemcheck_mark_freed(void *address, unsigned int n)
- {
- }
- static inline void kmemcheck_mark_unallocated_pages(struct page *p,
- unsigned int n)
- {
- }
- static inline void kmemcheck_mark_uninitialized_pages(struct page *p,
- unsigned int n)
- {
- }
- static inline void kmemcheck_mark_initialized_pages(struct page *p,
- unsigned int n)
- {
- }
- #endif /* CONFIG_KMEMCHECK */
- #endif /* LINUX_KMEMCHECK_H */
|