Lines Matching +full:cache +full:- +full:size

1 /* SPDX-License-Identifier: GPL-2.0 */
6 #include <linux/kasan-enabled.h>
61 int kasan_add_zero_shadow(void *start, unsigned long size);
62 void kasan_remove_zero_shadow(void *start, unsigned long size);
72 static inline int kasan_add_zero_shadow(void *start, unsigned long size) in kasan_add_zero_shadow() argument
77 unsigned long size) in kasan_remove_zero_shadow() argument
129 void __kasan_unpoison_range(const void *addr, size_t size);
130 static __always_inline void kasan_unpoison_range(const void *addr, size_t size) in kasan_unpoison_range() argument
133 __kasan_unpoison_range(addr, size); in kasan_unpoison_range()
152 void __kasan_cache_create(struct kmem_cache *cache, unsigned int *size,
154 static __always_inline void kasan_cache_create(struct kmem_cache *cache, in kasan_cache_create() argument
155 unsigned int *size, slab_flags_t *flags) in kasan_cache_create() argument
158 __kasan_cache_create(cache, size, flags); in kasan_cache_create()
161 void __kasan_cache_create_kmalloc(struct kmem_cache *cache);
162 static __always_inline void kasan_cache_create_kmalloc(struct kmem_cache *cache) in kasan_cache_create_kmalloc() argument
165 __kasan_cache_create_kmalloc(cache); in kasan_cache_create_kmalloc()
168 size_t __kasan_metadata_size(struct kmem_cache *cache);
169 static __always_inline size_t kasan_metadata_size(struct kmem_cache *cache) in kasan_metadata_size() argument
172 return __kasan_metadata_size(cache); in kasan_metadata_size()
183 void __kasan_unpoison_object_data(struct kmem_cache *cache, void *object);
184 static __always_inline void kasan_unpoison_object_data(struct kmem_cache *cache, in kasan_unpoison_object_data() argument
188 __kasan_unpoison_object_data(cache, object); in kasan_unpoison_object_data()
191 void __kasan_poison_object_data(struct kmem_cache *cache, void *object);
192 static __always_inline void kasan_poison_object_data(struct kmem_cache *cache, in kasan_poison_object_data() argument
196 __kasan_poison_object_data(cache, object); in kasan_poison_object_data()
199 void * __must_check __kasan_init_slab_obj(struct kmem_cache *cache,
202 struct kmem_cache *cache, const void *object) in kasan_init_slab_obj() argument
205 return __kasan_init_slab_obj(cache, object); in kasan_init_slab_obj()
244 size_t size, gfp_t flags);
246 const void *object, size_t size, gfp_t flags) in kasan_kmalloc() argument
249 return __kasan_kmalloc(s, object, size, flags); in kasan_kmalloc()
254 size_t size, gfp_t flags);
256 size_t size, gfp_t flags) in kasan_kmalloc_large() argument
259 return __kasan_kmalloc_large(ptr, size, flags); in kasan_kmalloc_large()
275 * the hardware tag-based mode that doesn't rely on compiler instrumentation.
295 static inline void kasan_unpoison_range(const void *address, size_t size) {} in kasan_unpoison_range() argument
300 static inline void kasan_cache_create(struct kmem_cache *cache, in kasan_cache_create() argument
301 unsigned int *size, in kasan_cache_create() argument
303 static inline void kasan_cache_create_kmalloc(struct kmem_cache *cache) {} in kasan_cache_create_kmalloc() argument
304 static inline size_t kasan_metadata_size(struct kmem_cache *cache) { return 0; } in kasan_metadata_size() argument
306 static inline void kasan_unpoison_object_data(struct kmem_cache *cache, in kasan_unpoison_object_data() argument
308 static inline void kasan_poison_object_data(struct kmem_cache *cache, in kasan_poison_object_data() argument
310 static inline void *kasan_init_slab_obj(struct kmem_cache *cache, in kasan_init_slab_obj() argument
327 size_t size, gfp_t flags) in kasan_kmalloc() argument
331 static inline void *kasan_kmalloc_large(const void *ptr, size_t size, gfp_t flags) in kasan_kmalloc_large() argument
355 void kasan_cache_shrink(struct kmem_cache *cache);
356 void kasan_cache_shutdown(struct kmem_cache *cache);
361 static inline void kasan_cache_shrink(struct kmem_cache *cache) {} in kasan_cache_shrink() argument
362 static inline void kasan_cache_shutdown(struct kmem_cache *cache) {} in kasan_cache_shutdown() argument
375 * kasan_report - print a report about a bad memory access detected by KASAN
377 * @size: size of the bad access
381 bool kasan_report(unsigned long addr, size_t size,
415 int kasan_populate_vmalloc(unsigned long addr, unsigned long size);
416 void kasan_poison_vmalloc(const void *start, unsigned long size);
417 void kasan_unpoison_vmalloc(const void *start, unsigned long size);
425 unsigned long size) in kasan_populate_vmalloc() argument
430 static inline void kasan_poison_vmalloc(const void *start, unsigned long size) in kasan_poison_vmalloc() argument
432 static inline void kasan_unpoison_vmalloc(const void *start, unsigned long size) in kasan_unpoison_vmalloc() argument
449 int kasan_module_alloc(void *addr, size_t size);
454 static inline int kasan_module_alloc(void *addr, size_t size) { return 0; } in kasan_module_alloc() argument