[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220311105215.5408-1-lecopzer.chen@mediatek.com>
Date: Fri, 11 Mar 2022 18:52:15 +0800
From: Lecopzer Chen <lecopzer.chen@...iatek.com>
To: <linux@...linux.org.uk>
CC: <andreyknvl@...il.com>, <anshuman.khandual@....com>,
<ardb@...nel.org>, <arnd@...db.de>, <dvyukov@...gle.com>,
<geert+renesas@...der.be>, <glider@...gle.com>,
<kasan-dev@...glegroups.com>, <lecopzer.chen@...iatek.com>,
<linus.walleij@...aro.org>, <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <lukas.bulwahn@...il.com>,
<mark.rutland@....com>, <masahiroy@...nel.org>,
<matthias.bgg@...il.com>, <ryabinin.a.a@...il.com>,
<yj.chiang@...iatek.com>
Subject: Re: [PATCH v3 0/2] arm: kasan: support CONFIG_KASAN_VMALLOC
> 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@...iatek.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@...aro.org>
> > Reviewed-by: Linus Walleij <linus.walleij@...aro.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
Powered by blists - more mailing lists