x86, mm: Include the entire kernel memory map in trampoline_pgd
authorMatt Fleming <matt.fleming@intel.com>
Fri, 7 Sep 2012 17:23:51 +0000 (18:23 +0100)
committerMatt Fleming <matt.fleming@intel.com>
Tue, 30 Oct 2012 10:39:19 +0000 (10:39 +0000)
commit53b87cf088e2ea68d7c59619d0214cc15bb76133
treeafa920fe2dc6e11dc023147fc6bffafcf19a2508
parente913ca7d16d70b75367ff56a3b201980501d542c
x86, mm: Include the entire kernel memory map in trampoline_pgd

There are various pieces of code in arch/x86 that require a page table
with an identity mapping. Make trampoline_pgd a proper kernel page
table, it currently only includes the kernel text and module space
mapping.

One new feature of trampoline_pgd is that it now has mappings for the
physical I/O device addresses, which are inserted at ioremap()
time. Some broken implementations of EFI firmware require these
mappings to always be around.

Acked-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
arch/x86/mm/init_64.c
arch/x86/mm/ioremap.c
arch/x86/realmode/init.c