Lines Matching full:addr
280 static inline bool addr_has_metadata(const void *addr) in addr_has_metadata() argument
282 return (kasan_reset_tag(addr) >= in addr_has_metadata()
288 * @addr: the accessed address
294 bool kasan_check_range(unsigned long addr, size_t size, bool write,
299 static inline bool addr_has_metadata(const void *addr) in addr_has_metadata() argument
301 return (is_vmalloc_addr(addr) || virt_addr_valid(addr)); in addr_has_metadata()
306 void *kasan_find_first_bad_addr(void *addr, size_t size);
311 void kasan_print_tags(u8 addr_tag, const void *addr);
313 static inline void kasan_print_tags(u8 addr_tag, const void *addr) { } in kasan_print_tags() argument
317 void kasan_print_address_stack_frame(const void *addr);
319 static inline void kasan_print_address_stack_frame(const void *addr) { } in kasan_print_address_stack_frame() argument
328 bool kasan_report(unsigned long addr, size_t size,
332 struct slab *kasan_addr_to_slab(const void *addr);
363 static inline const void *arch_kasan_set_tag(const void *addr, u8 tag) in arch_kasan_set_tag() argument
365 return addr; in arch_kasan_set_tag()
369 #define arch_kasan_get_tag(addr) 0 argument
372 #define set_tag(addr, tag) ((void *)arch_kasan_set_tag((addr), (tag))) argument
373 #define get_tag(addr) arch_kasan_get_tag(addr) argument
393 #define arch_get_mem_tag(addr) (0xFF) argument
396 #define arch_set_mem_tag_range(addr, size, tag, init) ((void *)(addr)) argument
404 #define hw_get_mem_tag(addr) arch_get_mem_tag(addr) argument
405 #define hw_set_mem_tag_range(addr, size, tag, init) \ argument
406 arch_set_mem_tag_range((addr), (size), (tag), (init))
444 static inline void kasan_poison(const void *addr, size_t size, u8 value, bool init) in kasan_poison() argument
446 addr = kasan_reset_tag(addr); in kasan_poison()
449 if (is_kfence_address(addr)) in kasan_poison()
452 if (WARN_ON((unsigned long)addr & KASAN_GRANULE_MASK)) in kasan_poison()
457 hw_set_mem_tag_range((void *)addr, size, value, init); in kasan_poison()
460 static inline void kasan_unpoison(const void *addr, size_t size, bool init) in kasan_unpoison() argument
462 u8 tag = get_tag(addr); in kasan_unpoison()
464 addr = kasan_reset_tag(addr); in kasan_unpoison()
467 if (is_kfence_address(addr)) in kasan_unpoison()
470 if (WARN_ON((unsigned long)addr & KASAN_GRANULE_MASK)) in kasan_unpoison()
482 memzero_explicit((void *)addr, size); in kasan_unpoison()
486 hw_set_mem_tag_range((void *)addr, size, tag, init); in kasan_unpoison()
489 static inline bool kasan_byte_accessible(const void *addr) in kasan_byte_accessible() argument
491 u8 ptr_tag = get_tag(addr); in kasan_byte_accessible()
492 u8 mem_tag = hw_get_mem_tag((void *)addr); in kasan_byte_accessible()
501 * @addr - range start address, must be aligned to KASAN_GRANULE_SIZE
508 void kasan_poison(const void *addr, size_t size, u8 value, bool init);
512 * @addr - range start address, must be aligned to KASAN_GRANULE_SIZE
521 void kasan_unpoison(const void *addr, size_t size, bool init);
523 bool kasan_byte_accessible(const void *addr);
532 * @addr - range start address, must be aligned to KASAN_GRANULE_SIZE
568 void __asan_alloca_poison(unsigned long addr, size_t size);
571 void __asan_load1(unsigned long addr);
572 void __asan_store1(unsigned long addr);
573 void __asan_load2(unsigned long addr);
574 void __asan_store2(unsigned long addr);
575 void __asan_load4(unsigned long addr);
576 void __asan_store4(unsigned long addr);
577 void __asan_load8(unsigned long addr);
578 void __asan_store8(unsigned long addr);
579 void __asan_load16(unsigned long addr);
580 void __asan_store16(unsigned long addr);
581 void __asan_loadN(unsigned long addr, size_t size);
582 void __asan_storeN(unsigned long addr, size_t size);
584 void __asan_load1_noabort(unsigned long addr);
585 void __asan_store1_noabort(unsigned long addr);
586 void __asan_load2_noabort(unsigned long addr);
587 void __asan_store2_noabort(unsigned long addr);
588 void __asan_load4_noabort(unsigned long addr);
589 void __asan_store4_noabort(unsigned long addr);
590 void __asan_load8_noabort(unsigned long addr);
591 void __asan_store8_noabort(unsigned long addr);
592 void __asan_load16_noabort(unsigned long addr);
593 void __asan_store16_noabort(unsigned long addr);
594 void __asan_loadN_noabort(unsigned long addr, size_t size);
595 void __asan_storeN_noabort(unsigned long addr, size_t size);
597 void __asan_report_load1_noabort(unsigned long addr);
598 void __asan_report_store1_noabort(unsigned long addr);
599 void __asan_report_load2_noabort(unsigned long addr);
600 void __asan_report_store2_noabort(unsigned long addr);
601 void __asan_report_load4_noabort(unsigned long addr);
602 void __asan_report_store4_noabort(unsigned long addr);
603 void __asan_report_load8_noabort(unsigned long addr);
604 void __asan_report_store8_noabort(unsigned long addr);
605 void __asan_report_load16_noabort(unsigned long addr);
606 void __asan_report_store16_noabort(unsigned long addr);
607 void __asan_report_load_n_noabort(unsigned long addr, size_t size);
608 void __asan_report_store_n_noabort(unsigned long addr, size_t size);
610 void __asan_set_shadow_00(const void *addr, size_t size);
611 void __asan_set_shadow_f1(const void *addr, size_t size);
612 void __asan_set_shadow_f2(const void *addr, size_t size);
613 void __asan_set_shadow_f3(const void *addr, size_t size);
614 void __asan_set_shadow_f5(const void *addr, size_t size);
615 void __asan_set_shadow_f8(const void *addr, size_t size);
617 void __hwasan_load1_noabort(unsigned long addr);
618 void __hwasan_store1_noabort(unsigned long addr);
619 void __hwasan_load2_noabort(unsigned long addr);
620 void __hwasan_store2_noabort(unsigned long addr);
621 void __hwasan_load4_noabort(unsigned long addr);
622 void __hwasan_store4_noabort(unsigned long addr);
623 void __hwasan_load8_noabort(unsigned long addr);
624 void __hwasan_store8_noabort(unsigned long addr);
625 void __hwasan_load16_noabort(unsigned long addr);
626 void __hwasan_store16_noabort(unsigned long addr);
627 void __hwasan_loadN_noabort(unsigned long addr, size_t size);
628 void __hwasan_storeN_noabort(unsigned long addr, size_t size);
630 void __hwasan_tag_memory(unsigned long addr, u8 tag, unsigned long size);