Re: [RFC PATCH] UML: add support for KASAN under x86_64

From: Patricia Alfonso
Date: Wed Feb 12 2020 - 17:25:53 EST


On Tue, Feb 11, 2020 at 10:24 PM Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote:
>
> On Wed, Feb 12, 2020 at 1:19 AM Patricia Alfonso
> <trishalfonso@xxxxxxxxxx> wrote:
> >
> > On Thu, Jan 16, 2020 at 12:53 AM Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote:
> > >
> > > > +void kasan_init(void)
> > > > +{
> > > > + kasan_map_memory((void *)KASAN_SHADOW_START, KASAN_SHADOW_SIZE);
> > > > +
> > > > + // unpoison the kernel text which is form uml_physmem -> uml_reserved
> > > > + kasan_unpoison_shadow((void *)uml_physmem, physmem_size);
> > > > +
> > > > + // unpoison the vmalloc region, which is start_vm -> end_vm
> > > > + kasan_unpoison_shadow((void *)start_vm, (end_vm - start_vm + 1));
> > > > +
> > > > + init_task.kasan_depth = 0;
> > > > + pr_info("KernelAddressSanitizer initialized\n");
> > > > +}
> > >
> > > Was this tested with stack instrumentation? Stack instrumentation
> > > changes what shadow is being read/written and when. We don't need to
> > > get it working right now, but if it does not work it would be nice to
> > > restrict the setting and leave some comment traces for future
> > > generations.
> > If you are referring to KASAN_STACK_ENABLE, I just tested it and it
> > seems to work fine.
>
>
> I mean stack instrumentation which is enabled with CONFIG_KASAN_STACK.

I believe I was testing with CONFIG_KASAN_STACK set to 1 since that is
the default value when compiling with GCC.The syscall_stub_data error
disappears when the value of CONFIG_KASAN_STACK is 0, though.


--
Patricia Alfonso