Re: [PATCH mm v3 23/38] kasan, arm64: reset pointer tags of vmapped stacks

From: Catalin Marinas
Date: Tue Dec 14 2021 - 08:25:30 EST


On Mon, Dec 13, 2021 at 10:54:19PM +0100, andrey.konovalov@xxxxxxxxx wrote:
> From: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
>
> Once tag-based KASAN modes start tagging vmalloc() allocations,
> kernel stacks start getting tagged if CONFIG_VMAP_STACK is enabled.
>
> Reset the tag of kernel stack pointers after allocation in
> arch_alloc_vmap_stack().
>
> For SW_TAGS KASAN, when CONFIG_KASAN_STACK is enabled, the
> instrumentation can't handle the SP register being tagged.
>
> For HW_TAGS KASAN, there's no instrumentation-related issues. However,
> the impact of having a tagged SP register needs to be properly evaluated,
> so keep it non-tagged for now.
>
> Note, that the memory for the stack allocation still gets tagged to
> catch vmalloc-into-stack out-of-bounds accesses.
>
> Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>

Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>