lkml.org 
[lkml]   [2022]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v3 0/2] arm: kasan: support CONFIG_KASAN_VMALLOC
Date
> On Fri, Mar 11, 2022 at 12:08:52AM +0100, Linus Walleij wrote:
> > On Sun, Feb 27, 2022 at 2:48 PM Lecopzer Chen
> > <lecopzer.chen@mediatek.com> wrote:
> >
> > > Since the framework of KASAN_VMALLOC is well-developed,
> > > It's easy to support for ARM that simply not to map shadow of VMALLOC
> > > area on kasan_init.
> > >
> > > Since the virtual address of vmalloc for Arm is also between
> > > MODULE_VADDR and 0x100000000 (ZONE_HIGHMEM), which means the shadow
> > > address has already included between KASAN_SHADOW_START and
> > > KASAN_SHADOW_END.
> > > Thus we need to change nothing for memory map of Arm.
> > >
> > > This can fix ARM_MODULE_PLTS with KASan, support KASan for higmem
> > > and provide the first step to support CONFIG_VMAP_STACK with Arm.
> > >
> > >
> > > Test on
> > > 1. Qemu with memory 2G and vmalloc=500M for 3G/1G mapping.
> > > 2. Qemu with memory 2G and vmalloc=500M for 3G/1G mapping + LPAE.
> > > 3. Qemu with memory 2G and vmalloc=500M for 2G/2G mapping.
> > >
> > > v3:
> > > rebase on 5.17-rc5.
> > > Add simple doc for "arm: kasan: support CONFIG_KASAN_VMALLOC"
> > > Tweak commit message.
> >
> > Ater testing this with my kernel-in-vmalloc patches and some hacks, I got
> > the kernel booting in the VMALLOC area with KASan enabled!
> > See:
> > https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.git/log/?h=kernel-in-vmalloc-v5.17-rc1
> >
> > That's a pretty serious stress test. So:
> > Tested-by: Linus Walleij <linus.walleij@linaro.org>
> > Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
> > for the series.
> >
> > I suppose you could put this into Russell's patch tracker, it's gonna be
> > for kernel v5.19 by now but why stress. It seems I can fix up
> > kernel-in-vmalloc on top and submit that for v5.19 as well.
>
> Ard's series already adds vmap stack support (which we've been doing
> some last minute panic-debugging on to get it ready for this merge
> window), but the above description makes it sound like this series is
> a pre-requisit for that.
>
> Is it? Will Ard's work cause further regressions because this series
> isn't merged.
>
> Please clarify - and urgently, there is not much time left before the
> merge window opens.
>

Sorry I didn't describe it clearly,

config VMAP_STACK
default y
bool "Use a virtually-mapped stack"
depends on HAVE_ARCH_VMAP_STACK
depends on !KASAN || KASAN_HW_TAGS || KASAN_VMALLOC

This means KASAN can support with VMAP_STACK=y



BRs,
Lecopzer

\
 
 \ /
  Last update: 2022-03-11 11:52    [W:0.059 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site