Re: [PATCH 1/2] x86/kasan: clear kasan_zero_page after TLB flush

From: Andy Lutomirski
Date: Mon Jan 18 2016 - 17:24:33 EST


On Mon, Jan 11, 2016 at 4:51 AM, Andrey Ryabinin
<aryabinin@xxxxxxxxxxxxx> wrote:
> Currently we clear kasan_zero_page before __flush_tlb_all(). This
> works with current implementation of native_flush_tlb[_global]()
> because it doesn't cause do any writes to kasan shadow memory.
> But any subtle change made in native_flush_tlb*() could break this.
> Also current code seems doesn't work for paravirt guests (lguest).
>
> Only after the TLB flush we can be sure that kasan_zero_page is not
> used as early shadow anymore (instrumented code will not write to it).
> So it should cleared it only after the TLB flush.

This seems to fix the issue with my patch set. Thanks.

Tested-by: Andy Lutomirski <luto@xxxxxxxxxx>

--Andy