Lines Matching refs:object

165 void __kasan_unpoison_new_object(struct kmem_cache *cache, void *object)  in __kasan_unpoison_new_object()  argument
167 kasan_unpoison(object, cache->object_size, false); in __kasan_unpoison_new_object()
170 void __kasan_poison_new_object(struct kmem_cache *cache, void *object) in __kasan_poison_new_object() argument
172 kasan_poison(object, round_up(cache->object_size, KASAN_GRANULE_SIZE), in __kasan_poison_new_object()
187 const void *object, bool init) in assign_tag() argument
204 return init ? kasan_random_tag() : get_tag(object); in assign_tag()
208 const void *object) in __kasan_init_slab_obj() argument
212 kasan_init_object_meta(cache, object); in __kasan_init_slab_obj()
215 object = set_tag(object, assign_tag(cache, object, true)); in __kasan_init_slab_obj()
217 return (void *)object; in __kasan_init_slab_obj()
221 static bool check_slab_allocation(struct kmem_cache *cache, void *object, in check_slab_allocation() argument
224 void *tagged_object = object; in check_slab_allocation()
226 object = kasan_reset_tag(object); in check_slab_allocation()
228 if (unlikely(nearest_obj(cache, virt_to_slab(object), object) != object)) { in check_slab_allocation()
241 static inline void poison_slab_object(struct kmem_cache *cache, void *object, in poison_slab_object() argument
244 void *tagged_object = object; in poison_slab_object()
246 object = kasan_reset_tag(object); in poison_slab_object()
248 kasan_poison(object, round_up(cache->object_size, KASAN_GRANULE_SIZE), in poison_slab_object()
255 bool __kasan_slab_pre_free(struct kmem_cache *cache, void *object, in __kasan_slab_pre_free() argument
258 if (is_kfence_address(object)) in __kasan_slab_pre_free()
260 return check_slab_allocation(cache, object, ip); in __kasan_slab_pre_free()
263 bool __kasan_slab_free(struct kmem_cache *cache, void *object, bool init, in __kasan_slab_free() argument
266 if (is_kfence_address(object)) in __kasan_slab_free()
284 poison_slab_object(cache, object, init); in __kasan_slab_free()
294 if (kasan_quarantine_put(cache, object)) in __kasan_slab_free()
328 static inline void unpoison_slab_object(struct kmem_cache *cache, void *object, in unpoison_slab_object() argument
335 kasan_unpoison(object, cache->object_size, init); in unpoison_slab_object()
339 kasan_save_alloc_info(cache, object, flags); in unpoison_slab_object()
343 void *object, gfp_t flags, bool init) in __kasan_slab_alloc() argument
351 if (unlikely(object == NULL)) in __kasan_slab_alloc()
354 if (is_kfence_address(object)) in __kasan_slab_alloc()
355 return (void *)object; in __kasan_slab_alloc()
361 tag = assign_tag(cache, object, false); in __kasan_slab_alloc()
362 tagged_object = set_tag(object, tag); in __kasan_slab_alloc()
371 const void *object, size_t size, gfp_t flags) in poison_kmalloc_redzone() argument
382 kasan_poison_last_granule((void *)object, size); in poison_kmalloc_redzone()
385 redzone_start = round_up((unsigned long)(object + size), in poison_kmalloc_redzone()
387 redzone_end = round_up((unsigned long)(object + cache->object_size), in poison_kmalloc_redzone()
397 kasan_save_alloc_info(cache, (void *)object, flags); in poison_kmalloc_redzone()
401 void * __must_check __kasan_kmalloc(struct kmem_cache *cache, const void *object, in __kasan_kmalloc() argument
407 if (unlikely(object == NULL)) in __kasan_kmalloc()
410 if (is_kfence_address(object)) in __kasan_kmalloc()
411 return (void *)object; in __kasan_kmalloc()
414 poison_kmalloc_redzone(cache, object, size, flags); in __kasan_kmalloc()
417 return (void *)object; in __kasan_kmalloc()
458 void * __must_check __kasan_krealloc(const void *object, size_t size, gfp_t flags) in __kasan_krealloc() argument
465 if (unlikely(object == ZERO_SIZE_PTR)) in __kasan_krealloc()
466 return (void *)object; in __kasan_krealloc()
468 if (is_kfence_address(object)) in __kasan_krealloc()
469 return (void *)object; in __kasan_krealloc()
476 kasan_unpoison(object, size, false); in __kasan_krealloc()
478 slab = virt_to_slab(object); in __kasan_krealloc()
482 poison_kmalloc_large_redzone(object, size, flags); in __kasan_krealloc()
484 poison_kmalloc_redzone(slab->slab_cache, object, size, flags); in __kasan_krealloc()
486 return (void *)object; in __kasan_krealloc()