lkml.org 
[lkml]   [2011]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86_64: disable identity mappings statically
On Fri, Feb 11, 2011 at 08:46:41AM -0800, Eric W. Biederman wrote:
> Jiri Olsa <jolsa@redhat.com> writes:
>
> > hi,
> >
> > while browsing the page table setup code, I noticed the x86_64 head
> > code might not need the identity mappings at all.
> > It seems it's ok to switch it off completely from the begining,
> > unless I'm missing something.
>
> Have you tested it?

yes, I booted it with no problem

>
> I expect you will find that we need the identity mapping because
> before we load this page table we are running with virt==phys
> and we need the identity mapping retained in the new page table
> so we can get to the instruction after movq %rax, %cr0.

well, right after the page table setup, there's following code
switching to the kernel map adresses 0xffffffff80000000+
movq %rax, %cr3

/* Ensure I am executing from virtual addresses */
movq $1f, %rax
jmp *%rax
1:

and I found no other identity mapping usage after this point

jirka


\
 
 \ /
  Last update: 2011-02-11 18:09    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site