x86: use initial_code for i386
authorGlauber Costa <gcosta@redhat.com>
Wed, 28 May 2008 15:57:02 +0000 (12:57 -0300)
committerIngo Molnar <mingo@elte.hu>
Tue, 8 Jul 2008 10:48:17 +0000 (12:48 +0200)
x86_64 jumps to whatever is written in "initial_code" symbol,
instead of a fixed address. Do it for i386 too. It will allow us
to integrate more of the smp boot code.

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/head_32.S

index b98b338aae1a536639186611dc915ce82ee02366..ffb73a5b609fe991470d9613cf5e7a9c216885a3 100644 (file)
@@ -455,7 +455,10 @@ is386:     movl $2,%ecx            # set MP
        jmp initialize_secondary # all other CPUs call initialize_secondary
 1:
 #endif /* CONFIG_SMP */
-       jmp i386_start_kernel
+       jmp *(initial_code)
+.align 4
+ENTRY(initial_code)
+       .long i386_start_kernel
 
 /*
  * We depend on ET to be correct. This checks for 287/387.