[PATCH 10/17] x86: ifdef 32-bit and 64-bit setup in init_memory_mapping()

From: Pekka Enberg
Date: Thu Mar 05 2009 - 08:08:53 EST


Impact: cleanup

To reduce the diff between the 32-bit and 64-bit versions of
init_memory_mapping(), ifdef configuration specific setup code in the function.

Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxxxxxx>
---
arch/x86/mm/init_32.c | 6 ++++++
arch/x86/mm/init_64.c | 8 ++++++++
2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index 0a3707f..3f91bdc 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -1054,10 +1054,16 @@ unsigned long __init_refok init_memory_mapping(unsigned long start,
mr[i].page_size_mask);
#endif

+#ifdef CONFIG_X86_32
early_ioremap_page_table_range_init();

load_cr3(swapper_pg_dir);
+#endif

+#ifdef CONFIG_X86_64
+ if (!after_bootmem)
+ mmu_cr4_features = read_cr4();
+#endif
__flush_tlb_all();

if (!after_bootmem && table_end > table_start)
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index e4fadea..5ecb23a 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -832,8 +832,16 @@ unsigned long __init_refok init_memory_mapping(unsigned long start,
mr[i].page_size_mask);
#endif

+#ifdef CONFIG_X86_32
+ early_ioremap_page_table_range_init();
+
+ load_cr3(swapper_pg_dir);
+#endif
+
+#ifdef CONFIG_X86_64
if (!after_bootmem)
mmu_cr4_features = read_cr4();
+#endif
__flush_tlb_all();

if (!after_bootmem && table_end > table_start)
--
1.5.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/