diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-10 09:12:18 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-10 09:12:18 -0500 |
commit | 4e9b1c184cadbece3694603de5f880b6e35bd7a7 (patch) | |
tree | 8ae2ab8a4eaab4d46b4460284fd5ee475ce9a42d /arch/x86/include/asm | |
parent | 0176260fc30842e358cf34afa7dcd9413db44822 (diff) | |
parent | 36c401a44abcc389a00f9cd14892c9cf9bf0780d (diff) |
Merge branch 'cpus4096-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'cpus4096-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
[IA64] fix typo in cpumask_of_pcibus()
x86: fix x86_32 builds for summit and es7000 arch's
cpumask: use work_on_cpu in acpi-cpufreq.c for read_measured_perf_ctrs
cpumask: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write
cpumask: use cpumask_var_t in acpi-cpufreq.c
cpumask: use work_on_cpu in acpi/cstate.c
cpumask: convert struct cpufreq_policy to cpumask_var_t
cpumask: replace CPUMASK_ALLOC etc with cpumask_var_t
x86: cleanup remaining cpumask_t ops in smpboot code
cpumask: update pci_bus_show_cpuaffinity to use new cpumask API
cpumask: update local_cpus_show to use new cpumask API
ia64: cpumask fix for is_affinity_mask_valid()
Diffstat (limited to 'arch/x86/include/asm')
-rw-r--r-- | arch/x86/include/asm/es7000/apic.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/smp.h | 32 | ||||
-rw-r--r-- | arch/x86/include/asm/summit/apic.h | 1 |
3 files changed, 32 insertions, 3 deletions
diff --git a/arch/x86/include/asm/es7000/apic.h b/arch/x86/include/asm/es7000/apic.h index bc53d5ef1386..c58b9cc74465 100644 --- a/arch/x86/include/asm/es7000/apic.h +++ b/arch/x86/include/asm/es7000/apic.h | |||
@@ -1,6 +1,8 @@ | |||
1 | #ifndef __ASM_ES7000_APIC_H | 1 | #ifndef __ASM_ES7000_APIC_H |
2 | #define __ASM_ES7000_APIC_H | 2 | #define __ASM_ES7000_APIC_H |
3 | 3 | ||
4 | #include <linux/gfp.h> | ||
5 | |||
4 | #define xapic_phys_to_log_apicid(cpu) per_cpu(x86_bios_cpu_apicid, cpu) | 6 | #define xapic_phys_to_log_apicid(cpu) per_cpu(x86_bios_cpu_apicid, cpu) |
5 | #define esr_disable (1) | 7 | #define esr_disable (1) |
6 | 8 | ||
diff --git a/arch/x86/include/asm/smp.h b/arch/x86/include/asm/smp.h index 830b9fcb6427..19953df61c52 100644 --- a/arch/x86/include/asm/smp.h +++ b/arch/x86/include/asm/smp.h | |||
@@ -18,9 +18,26 @@ | |||
18 | #include <asm/pda.h> | 18 | #include <asm/pda.h> |
19 | #include <asm/thread_info.h> | 19 | #include <asm/thread_info.h> |
20 | 20 | ||
21 | #ifdef CONFIG_X86_64 | ||
22 | |||
23 | extern cpumask_var_t cpu_callin_mask; | ||
24 | extern cpumask_var_t cpu_callout_mask; | ||
25 | extern cpumask_var_t cpu_initialized_mask; | ||
26 | extern cpumask_var_t cpu_sibling_setup_mask; | ||
27 | |||
28 | #else /* CONFIG_X86_32 */ | ||
29 | |||
30 | extern cpumask_t cpu_callin_map; | ||
21 | extern cpumask_t cpu_callout_map; | 31 | extern cpumask_t cpu_callout_map; |
22 | extern cpumask_t cpu_initialized; | 32 | extern cpumask_t cpu_initialized; |
23 | extern cpumask_t cpu_callin_map; | 33 | extern cpumask_t cpu_sibling_setup_map; |
34 | |||
35 | #define cpu_callin_mask ((struct cpumask *)&cpu_callin_map) | ||
36 | #define cpu_callout_mask ((struct cpumask *)&cpu_callout_map) | ||
37 | #define cpu_initialized_mask ((struct cpumask *)&cpu_initialized) | ||
38 | #define cpu_sibling_setup_mask ((struct cpumask *)&cpu_sibling_setup_map) | ||
39 | |||
40 | #endif /* CONFIG_X86_32 */ | ||
24 | 41 | ||
25 | extern void (*mtrr_hook)(void); | 42 | extern void (*mtrr_hook)(void); |
26 | extern void zap_low_mappings(void); | 43 | extern void zap_low_mappings(void); |
@@ -29,7 +46,6 @@ extern int __cpuinit get_local_pda(int cpu); | |||
29 | 46 | ||
30 | extern int smp_num_siblings; | 47 | extern int smp_num_siblings; |
31 | extern unsigned int num_processors; | 48 | extern unsigned int num_processors; |
32 | extern cpumask_t cpu_initialized; | ||
33 | 49 | ||
34 | DECLARE_PER_CPU(cpumask_t, cpu_sibling_map); | 50 | DECLARE_PER_CPU(cpumask_t, cpu_sibling_map); |
35 | DECLARE_PER_CPU(cpumask_t, cpu_core_map); | 51 | DECLARE_PER_CPU(cpumask_t, cpu_core_map); |
@@ -38,6 +54,16 @@ DECLARE_PER_CPU(u16, cpu_llc_id); | |||
38 | DECLARE_PER_CPU(int, cpu_number); | 54 | DECLARE_PER_CPU(int, cpu_number); |
39 | #endif | 55 | #endif |
40 | 56 | ||
57 | static inline struct cpumask *cpu_sibling_mask(int cpu) | ||
58 | { | ||
59 | return &per_cpu(cpu_sibling_map, cpu); | ||
60 | } | ||
61 | |||
62 | static inline struct cpumask *cpu_core_mask(int cpu) | ||
63 | { | ||
64 | return &per_cpu(cpu_core_map, cpu); | ||
65 | } | ||
66 | |||
41 | DECLARE_EARLY_PER_CPU(u16, x86_cpu_to_apicid); | 67 | DECLARE_EARLY_PER_CPU(u16, x86_cpu_to_apicid); |
42 | DECLARE_EARLY_PER_CPU(u16, x86_bios_cpu_apicid); | 68 | DECLARE_EARLY_PER_CPU(u16, x86_bios_cpu_apicid); |
43 | 69 | ||
@@ -149,7 +175,7 @@ void smp_store_cpu_info(int id); | |||
149 | /* We don't mark CPUs online until __cpu_up(), so we need another measure */ | 175 | /* We don't mark CPUs online until __cpu_up(), so we need another measure */ |
150 | static inline int num_booting_cpus(void) | 176 | static inline int num_booting_cpus(void) |
151 | { | 177 | { |
152 | return cpus_weight(cpu_callout_map); | 178 | return cpumask_weight(cpu_callout_mask); |
153 | } | 179 | } |
154 | #else | 180 | #else |
155 | static inline void prefill_possible_map(void) | 181 | static inline void prefill_possible_map(void) |
diff --git a/arch/x86/include/asm/summit/apic.h b/arch/x86/include/asm/summit/apic.h index 4bb5fb34f030..93d2c8667cfe 100644 --- a/arch/x86/include/asm/summit/apic.h +++ b/arch/x86/include/asm/summit/apic.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define __ASM_SUMMIT_APIC_H | 2 | #define __ASM_SUMMIT_APIC_H |
3 | 3 | ||
4 | #include <asm/smp.h> | 4 | #include <asm/smp.h> |
5 | #include <linux/gfp.h> | ||
5 | 6 | ||
6 | #define esr_disable (1) | 7 | #define esr_disable (1) |
7 | #define NO_BALANCE_IRQ (0) | 8 | #define NO_BALANCE_IRQ (0) |