/mm/kasan/ |
D | kasan.h | 196 u8 free_pointer_tag[KASAN_NR_FREE_STACKS]; 197 u8 free_track_idx; 264 void kasan_print_tags(u8 addr_tag, const void *addr); 266 static inline void kasan_print_tags(u8 addr_tag, const void *addr) { } in kasan_print_tags() 287 void kasan_set_free_info(struct kmem_cache *cache, void *object, u8 tag); 289 void *object, u8 tag); 303 static inline const void *arch_kasan_set_tag(const void *addr, u8 tag) in arch_kasan_set_tag() 371 u8 kasan_random_tag(void); 373 static inline u8 kasan_random_tag(void) { return hw_get_random_tag(); } in kasan_random_tag() 375 static inline u8 kasan_random_tag(void) { return 0; } in kasan_random_tag() [all …]
|
D | sw_tags.c | 60 u8 kasan_random_tag(void) in kasan_random_tag() 67 return (u8)(state % (KASAN_TAG_MAX + 1)); in kasan_random_tag() 73 u8 tag; in kasan_check_range() 74 u8 *shadow_first, *shadow_last, *shadow; in kasan_check_range() 123 u8 tag = get_tag(addr); in kasan_byte_accessible() 125 u8 shadow_byte; in kasan_byte_accessible() 130 shadow_byte = READ_ONCE(*(u8 *)kasan_mem_to_shadow(untagged_addr)); in kasan_byte_accessible() 164 void __hwasan_tag_memory(unsigned long addr, u8 tag, unsigned long size) in __hwasan_tag_memory()
|
D | report_sw_tags.c | 34 u8 tag = get_tag(addr); in kasan_find_first_bad_addr() 38 while (p < end && tag == *(u8 *)kasan_mem_to_shadow(p)) in kasan_find_first_bad_addr() 48 void kasan_print_tags(u8 addr_tag, const void *addr) in kasan_print_tags() 50 u8 *shadow = (u8 *)kasan_mem_to_shadow(addr); in kasan_print_tags()
|
D | generic.c | 58 u8 *shadow_addr = (u8 *)kasan_mem_to_shadow((void *)addr); in memory_is_poisoned_2_4_8() 81 static __always_inline unsigned long bytes_is_nonzero(const u8 *start, in bytes_is_nonzero() 362 void *object, u8 tag) in kasan_set_free_info() 372 *(u8 *)kasan_mem_to_shadow(object) = KASAN_KMALLOC_FREETRACK; in kasan_set_free_info() 376 void *object, u8 tag) in kasan_get_free_track() 378 if (*(u8 *)kasan_mem_to_shadow(object) != KASAN_KMALLOC_FREETRACK) in kasan_get_free_track()
|
D | report_generic.c | 37 while (p < addr + size && !(*(u8 *)kasan_mem_to_shadow(p))) in kasan_find_first_bad_addr() 45 u8 *shadow_addr; in get_shadow_bug_type() 47 shadow_addr = (u8 *)kasan_mem_to_shadow(info->first_bad_addr); in get_shadow_bug_type() 221 const u8 *shadow_bottom; in get_address_stack_frame_info() 222 const u8 *shadow_ptr; in get_address_stack_frame_info()
|
D | tags.c | 21 void *object, u8 tag) in kasan_set_free_info() 24 u8 idx = 0; in kasan_set_free_info() 40 void *object, u8 tag) in kasan_get_free_track()
|
D | common.c | 104 u8 tag; in __kasan_unpoison_pages() 284 static inline u8 assign_tag(struct kmem_cache *cache, in assign_tag() 300 return (u8)obj_to_index(cache, virt_to_head_page(object), (void *)object); in assign_tag() 330 u8 tag; in ____kasan_slab_free() 439 u8 tag; in __kasan_slab_alloc()
|
D | report_hw_tags.c | 31 void kasan_print_tags(u8 addr_tag, const void *addr) in kasan_print_tags() 33 u8 memory_tag = hw_get_mem_tag((void *)addr); in kasan_print_tags()
|
D | report.c | 187 const void *addr, u8 tag) in describe_object_stacks() 221 const void *addr, u8 tag) in describe_object() 244 static void print_address_description(void *addr, u8 tag) in print_address_description() 359 u8 tag = get_tag(object); in kasan_report_invalid_free()
|
D | shadow.c | 72 void kasan_poison(const void *addr, size_t size, u8 value, bool init) in kasan_poison() 109 u8 *shadow = (u8 *)kasan_mem_to_shadow(addr + size); in kasan_poison_last_granule() 117 u8 tag = get_tag(addr); in kasan_unpoison()
|
D | hw_tags.c | 239 static void unpoison_vmalloc_pages(const void *addr, u8 tag) in unpoison_vmalloc_pages() 263 u8 tag; in __kasan_unpoison_vmalloc()
|
D | report_tags.c | 18 u8 tag; in kasan_get_bug_type()
|
D | quarantine.c | 155 *(u8 *)kasan_mem_to_shadow(object) = KASAN_KMALLOC_FREE; in qlink_free()
|
/mm/ |
D | maccess.c | 42 copy_from_kernel_nofault_loop(dst, src, size, u8, Efault); in copy_from_kernel_nofault() 73 copy_to_kernel_nofault_loop(dst, src, size, u8, Efault); in copy_to_kernel_nofault() 92 __get_kernel_nofault(dst, src, u8, Efault); in strncpy_from_kernel_nofault()
|
D | zswap.c | 136 u8 *dstmem; 400 static DEFINE_PER_CPU(u8 *, zswap_dstmem); 411 u8 *dst; in zswap_dstmem_prepare() 432 u8 *dst; in zswap_dstmem_dead() 938 u8 *src, *tmp = NULL; in zswap_writeback_entry() 970 src = (u8 *)zhdr + sizeof(struct zswap_header); in zswap_writeback_entry() 1093 u8 *src, *dst; in zswap_frontswap_store() 1254 u8 *src, *dst, *tmp; in zswap_frontswap_load()
|
D | mempool.c | 37 pr_cont("%x ", *(u8 *)(element + i)); in poison_error() 44 u8 *obj = element; in __check_element() 48 u8 exp = (i < size - 1) ? POISON_FREE : POISON_END; in __check_element() 75 u8 *obj = element; in __poison_element()
|
D | slub.c | 647 static void print_section(char *level, char *text, u8 *addr, in print_section() 839 static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) in print_trailer() 842 u8 *addr = page_address(page); in print_trailer() 879 u8 *object, char *reason) in object_err() 907 static void init_object(struct kmem_cache *s, void *object, u8 val) in init_object() 909 u8 *p = kasan_reset_tag(object); in init_object() 923 static void restore_bytes(struct kmem_cache *s, char *message, u8 data, in restore_bytes() 931 u8 *object, char *what, in check_bytes_and_report() 932 u8 *start, unsigned int value, unsigned int bytes) in check_bytes_and_report() 934 u8 *fault; in check_bytes_and_report() [all …]
|
D | shuffle.c | 165 static u8 rand_bits; in shuffle_pick_tail()
|
D | dmapool.c | 349 u8 *data = retval; in dma_pool_alloc()
|
D | kmemleak.c | 285 const u8 *ptr = (const u8 *)object->pointer; in hex_dump_object()
|
D | sparse.c | 41 static u8 section_to_node_table[NR_MEM_SECTIONS] __cacheline_aligned;
|
D | slab_common.c | 711 static u8 size_index[24] __ro_after_init = {
|
/mm/kfence/ |
D | kfence.h | 24 #define KFENCE_CANARY_PATTERN(addr) ((u8)0xaa ^ (u8)((unsigned long)(addr) & 0x7))
|
D | report.c | 157 const u8 *cur, *end; in print_diff_canary() 160 end = (const u8 *)(address < meta->addr ? min(show_until_addr, meta->addr) in print_diff_canary() 164 for (cur = (const u8 *)address; cur < end; cur++) { in print_diff_canary()
|
D | core.c | 283 static inline bool set_canary_byte(u8 *addr) in set_canary_byte() 290 static inline bool check_canary_byte(u8 *addr) in check_canary_byte() 302 static __always_inline void for_each_canary(const struct kfence_metadata *meta, bool (*fn)(u8 *)) in for_each_canary() argument 320 if (!fn((u8 *)addr)) in for_each_canary() 326 if (!fn((u8 *)addr)) in for_each_canary()
|