This goes on top of: [v3] kasan, mm: fix crash with HW_TAGS and DEBUG_PAGEALLOC [v3] mm, kasan: don't poison boot memory with tag-based modes This patch series integrates HW_TAGS KASAN with init_on_alloc/free by initializing memory via the same arm64 instruction that sets memory tags. This is expected to improve HW_TAGS KASAN performance when init_on_alloc/free is enabled. The exact perfomance numbers are unknown as MTE-enabled hardware doesn't exist yet. Andrey Konovalov (5): arm64: kasan: allow to init memory when setting tags kasan: init memory in kasan_(un)poison for HW_TAGS kasan, mm: integrate page_alloc init with HW_TAGS kasan, mm: integrate slab init_on_alloc with HW_TAGS kasan, mm: integrate slab init_on_free with HW_TAGS arch/arm64/include/asm/memory.h | 4 +- arch/arm64/include/asm/mte-kasan.h | 20 ++++++--- include/linux/kasan.h | 34 ++++++++------- lib/test_kasan.c | 4 +- mm/kasan/common.c | 45 +++++++++---------- mm/kasan/generic.c | 12 ++--- mm/kasan/kasan.h | 19 ++++---- mm/kasan/shadow.c | 10 ++--- mm/kasan/sw_tags.c | 2 +- mm/mempool.c | 4 +- mm/page_alloc.c | 37 +++++++++++----- mm/slab.c | 43 ++++++++++-------- mm/slab.h | 17 ++++++-- mm/slub.c | 70 +++++++++++++++--------------- 14 files changed, 182 insertions(+), 139 deletions(-) -- 2.30.1.766.gb4fecdf3b7-goog