Messages in this thread | | | Date | Wed, 01 Oct 2014 20:28:18 +0400 | From | Andrey Ryabinin <> | Subject | Re: [RFC/PATCH v2 02/10] x86_64: add KASan support |
| |
On 10/01/2014 07:31 PM, H. Peter Anvin wrote: > On 09/10/2014 10:31 PM, Andrey Ryabinin wrote: >> On 09/11/2014 08:01 AM, H. Peter Anvin wrote: >>> On 09/10/2014 07:31 AM, Andrey Ryabinin wrote: >>>> This patch add arch specific code for kernel address sanitizer. >>>> >>>> 16TB of virtual addressed used for shadow memory. >>>> It's located in range [0xffff800000000000 - 0xffff900000000000] >>>> Therefore PAGE_OFFSET has to be changed from 0xffff880000000000 >>>> to 0xffff900000000000. >>> >>> NAK on this. >>> >>> 0xffff880000000000 is the lowest usable address because we have agreed >>> to leave 0xffff800000000000-0xffff880000000000 for the hypervisor or >>> other non-OS uses. >>> >>> Bumping PAGE_OFFSET seems needlessly messy, why not just designate a >>> zone higher up in memory? >>> >> >> I already answered to Dave why I choose to place shadow bellow PAGE_OFFSET (answer copied bellow). >> In short - yes, shadow could be higher. But for some sort of kernel bugs we could have confusing oopses in kasan kernel. >> > > Confusing how? I presume you are talking about something trying to > touch a non-canonical address, which is usually a very blatant type of bug. > > -hpa >
For those kinds of bugs we normally get general protection fault.
With inline instrumented kasan we could get either general protection fault, or unhandled page fault on "kasan_mem_to_shadow(non_canonical_address)" address. I assume that the last case could be a bit confusing.
| |