Messages in this thread | | | Date | Fri, 11 Feb 2011 18:07:22 +0100 | From | Jiri Olsa <> | Subject | Re: [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
| |