Skip to content

Commit

Permalink
x86/voyager: fix boot breakage caused by x86: boot secondary cpus thr…
Browse files Browse the repository at this point in the history
…ough initial_code

Impact: boot up secondary CPUs as well on x86/Voyager systems

This commit:

| commit 3e97047
| Author: Glauber Costa <gcosta@redhat.com>
| Date:   Wed May 28 13:01:54 2008 -0300
|
|     x86: boot secondary cpus through initial_code

removed the use of initialize_secondary.  However, it didn't update
voyager, so the secondary cpus no longer boot.  Fix this by adding the
initial_code switch to voyager as well.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
James Bottomley authored and Ingo Molnar committed Oct 30, 2008
1 parent c08b6ac commit 08c3330
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion arch/x86/mach-voyager/voyager_smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ static void ack_vic_irq(unsigned int irq);
static void vic_enable_cpi(void);
static void do_boot_cpu(__u8 cpuid);
static void do_quad_bootstrap(void);
static void initialize_secondary(void);

int hard_smp_processor_id(void);
int safe_smp_processor_id(void);
Expand Down Expand Up @@ -650,6 +651,8 @@ void __init smp_boot_cpus(void)
smp_tune_scheduling();
*/
smp_store_cpu_info(boot_cpu_id);
/* setup the jump vector */
initial_code = (unsigned long)initialize_secondary;
printk("CPU%d: ", boot_cpu_id);
print_cpu_info(&cpu_data(boot_cpu_id));

Expand Down Expand Up @@ -702,7 +705,7 @@ void __init smp_boot_cpus(void)

/* Reload the secondary CPUs task structure (this function does not
* return ) */
void __init initialize_secondary(void)
static void __init initialize_secondary(void)
{
#if 0
// AC kernels only
Expand Down

0 comments on commit 08c3330

Please sign in to comment.