x86: fix some bugs about EFI runtime code mapping
authorHuang, Ying <ying.huang@intel.com>
Wed, 30 Jan 2008 12:33:55 +0000 (13:33 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:33:55 +0000 (13:33 +0100)
commita2172e2586f6662af996e47f417bb718c37cf8d2
treef2430abad9fd9417653a3a2faa472d9df0c308bd
parentcd58289667293593b04fd315ec7f2f37589134cb
x86: fix some bugs about EFI runtime code mapping

This patch fixes some bugs of making EFI runtime code executable.

- Use change_page_attr in i386 too. Because the runtime code may be
  mapped not through ioremap.

- If there is no _PAGE_NX in __supported_pte_mask, the change_page_attr
  is not called.

- Make efi_ioremap map pages as PAGE_KERNEL_EXEC_NOCACHE, because EFI runtime
  code may be mapped through efi_ioremap.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/efi.c
arch/x86/kernel/efi_64.c
include/asm-x86/efi.h