diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2007-05-02 13:27:11 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2007-05-02 13:27:11 -0400 |
commit | 01a2f435564b4baab61328b4018d36464468f57b (patch) | |
tree | 991f6a1604a203736131b855262d78fb75711f9b /arch/i386/kernel/smpboot.c | |
parent | 4fbb5968810b237e81977f131986b9efd5245368 (diff) |
[PATCH] i386: Add smp_ops interface
Add a smp_ops interface. This abstracts the API defined by
<linux/smp.h> for use within arch/i386. The primary intent is that it
be used by a paravirtualizing hypervisor to implement SMP, but it
could also be used by non-APIC-using sub-architectures.
This is related to CONFIG_PARAVIRT, but is implemented unconditionally
since it is simpler that way and not a highly performance-sensitive
interface.
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Cc: Andi Kleen <ak@suse.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'arch/i386/kernel/smpboot.c')
-rw-r--r-- | arch/i386/kernel/smpboot.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c index b0ad04d9ef21..1c3ad9b406ca 100644 --- a/arch/i386/kernel/smpboot.c +++ b/arch/i386/kernel/smpboot.c | |||
@@ -1171,7 +1171,7 @@ static void __init smp_boot_cpus(unsigned int max_cpus) | |||
1171 | 1171 | ||
1172 | /* These are wrappers to interface to the new boot process. Someone | 1172 | /* These are wrappers to interface to the new boot process. Someone |
1173 | who understands all this stuff should rewrite it properly. --RR 15/Jul/02 */ | 1173 | who understands all this stuff should rewrite it properly. --RR 15/Jul/02 */ |
1174 | void __init smp_prepare_cpus(unsigned int max_cpus) | 1174 | void __init native_smp_prepare_cpus(unsigned int max_cpus) |
1175 | { | 1175 | { |
1176 | smp_commenced_mask = cpumask_of_cpu(0); | 1176 | smp_commenced_mask = cpumask_of_cpu(0); |
1177 | cpu_callin_map = cpumask_of_cpu(0); | 1177 | cpu_callin_map = cpumask_of_cpu(0); |
@@ -1191,7 +1191,7 @@ static inline void switch_to_new_gdt(void) | |||
1191 | asm volatile ("mov %0, %%fs" : : "r" (__KERNEL_PDA) : "memory"); | 1191 | asm volatile ("mov %0, %%fs" : : "r" (__KERNEL_PDA) : "memory"); |
1192 | } | 1192 | } |
1193 | 1193 | ||
1194 | void __init smp_prepare_boot_cpu(void) | 1194 | void __init native_smp_prepare_boot_cpu(void) |
1195 | { | 1195 | { |
1196 | unsigned int cpu = smp_processor_id(); | 1196 | unsigned int cpu = smp_processor_id(); |
1197 | 1197 | ||
@@ -1292,7 +1292,7 @@ void __cpu_die(unsigned int cpu) | |||
1292 | } | 1292 | } |
1293 | #endif /* CONFIG_HOTPLUG_CPU */ | 1293 | #endif /* CONFIG_HOTPLUG_CPU */ |
1294 | 1294 | ||
1295 | int __cpuinit __cpu_up(unsigned int cpu) | 1295 | int __cpuinit native_cpu_up(unsigned int cpu) |
1296 | { | 1296 | { |
1297 | unsigned long flags; | 1297 | unsigned long flags; |
1298 | #ifdef CONFIG_HOTPLUG_CPU | 1298 | #ifdef CONFIG_HOTPLUG_CPU |
@@ -1337,7 +1337,7 @@ int __cpuinit __cpu_up(unsigned int cpu) | |||
1337 | return 0; | 1337 | return 0; |
1338 | } | 1338 | } |
1339 | 1339 | ||
1340 | void __init smp_cpus_done(unsigned int max_cpus) | 1340 | void __init native_smp_cpus_done(unsigned int max_cpus) |
1341 | { | 1341 | { |
1342 | #ifdef CONFIG_X86_IO_APIC | 1342 | #ifdef CONFIG_X86_IO_APIC |
1343 | setup_ioapic_dest(); | 1343 | setup_ioapic_dest(); |