Skip to contentSkip to conversation

x86-64: fix .init section reference warnings

PATCH New Jan Beulich 1 participant 1 message Dec 10, 2007

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 x86-64: fix .init section reference warnings

The change in head_64.S is needed because ld -r renames .init.data to .init.data.<number> for all but the first instance due to mismatching section attributes.
The change in init_64.c is necessary because find_early_table_space() is called from a __meminit function, but calls itself an __init one.

 arch/x86/kernel/head_64.S |    2 +-
 arch/x86/mm/init_64.c     |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
arch/x86/kernel/head_64.S +1 -1
@@ -244,7 +244,7 @@ ENTRY(secondary_startup_64)
 
 	/* SMP bootup changes these two */
 #ifndef CONFIG_HOTPLUG_CPU
-	.pushsection .init.data
+	.pushsection .init.data, "aw"
 #endif
 	.align	8
 	.globl	initial_code
arch/x86/mm/init_64.c +1 -1
@@ -317,7 +317,7 @@ static void __meminit phys_pud_init(pud_
 	__flush_tlb();
 } 
 
-static void __init find_early_table_space(unsigned long end)
+static noinline void __init_refok find_early_table_space(unsigned long end)
 {
 	unsigned long puds, pmds, tables, start;