--- 2.6.26-rc8/arch/x86/kernel/efi.c 2008-05-03 21:54:40.000000000 +0100 +++ linux/arch/x86/kernel/efi.c 2008-07-02 17:29:32.000000000 +0100 @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -485,6 +486,7 @@ void __init efi_enter_virtual_mode(void) runtime_code_page_mkexec(); early_iounmap(memmap.map, memmap.nr_map * memmap.desc_size); memmap.map = NULL; + zap_low_mappings(); } /* --- 2.6.26-rc8/arch/x86/mm/init_32.c 2008-05-19 11:19:00.000000000 +0100 +++ linux/arch/x86/mm/init_32.c 2008-07-02 17:26:55.000000000 +0100 @@ -662,7 +662,8 @@ void __init mem_init(void) cpa_init(); save_pg_dir(); - zap_low_mappings(); + if (!efi_enabled) + zap_low_mappings(); } #ifdef CONFIG_MEMORY_HOTPLUG