aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel/smp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc64/kernel/smp.c')
-rw-r--r--arch/sparc64/kernel/smp.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index c73b7a48b036..407d74a8a542 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -52,14 +52,13 @@ int sparc64_multi_core __read_mostly;
52 52
53cpumask_t cpu_possible_map __read_mostly = CPU_MASK_NONE; 53cpumask_t cpu_possible_map __read_mostly = CPU_MASK_NONE;
54cpumask_t cpu_online_map __read_mostly = CPU_MASK_NONE; 54cpumask_t cpu_online_map __read_mostly = CPU_MASK_NONE;
55cpumask_t cpu_sibling_map[NR_CPUS] __read_mostly = 55DEFINE_PER_CPU(cpumask_t, cpu_sibling_map) = CPU_MASK_NONE;
56 { [0 ... NR_CPUS-1] = CPU_MASK_NONE };
57cpumask_t cpu_core_map[NR_CPUS] __read_mostly = 56cpumask_t cpu_core_map[NR_CPUS] __read_mostly =
58 { [0 ... NR_CPUS-1] = CPU_MASK_NONE }; 57 { [0 ... NR_CPUS-1] = CPU_MASK_NONE };
59 58
60EXPORT_SYMBOL(cpu_possible_map); 59EXPORT_SYMBOL(cpu_possible_map);
61EXPORT_SYMBOL(cpu_online_map); 60EXPORT_SYMBOL(cpu_online_map);
62EXPORT_SYMBOL(cpu_sibling_map); 61EXPORT_PER_CPU_SYMBOL(cpu_sibling_map);
63EXPORT_SYMBOL(cpu_core_map); 62EXPORT_SYMBOL(cpu_core_map);
64 63
65static cpumask_t smp_commenced_mask; 64static cpumask_t smp_commenced_mask;
@@ -1261,16 +1260,16 @@ void __devinit smp_fill_in_sib_core_maps(void)
1261 for_each_present_cpu(i) { 1260 for_each_present_cpu(i) {
1262 unsigned int j; 1261 unsigned int j;
1263 1262
1264 cpus_clear(cpu_sibling_map[i]); 1263 cpus_clear(per_cpu(cpu_sibling_map, i));
1265 if (cpu_data(i).proc_id == -1) { 1264 if (cpu_data(i).proc_id == -1) {
1266 cpu_set(i, cpu_sibling_map[i]); 1265 cpu_set(i, per_cpu(cpu_sibling_map, i));
1267 continue; 1266 continue;
1268 } 1267 }
1269 1268
1270 for_each_present_cpu(j) { 1269 for_each_present_cpu(j) {
1271 if (cpu_data(i).proc_id == 1270 if (cpu_data(i).proc_id ==
1272 cpu_data(j).proc_id) 1271 cpu_data(j).proc_id)
1273 cpu_set(j, cpu_sibling_map[i]); 1272 cpu_set(j, per_cpu(cpu_sibling_map, i));
1274 } 1273 }
1275 } 1274 }
1276} 1275}
@@ -1342,9 +1341,9 @@ int __cpu_disable(void)
1342 cpu_clear(cpu, cpu_core_map[i]); 1341 cpu_clear(cpu, cpu_core_map[i]);
1343 cpus_clear(cpu_core_map[cpu]); 1342 cpus_clear(cpu_core_map[cpu]);
1344 1343
1345 for_each_cpu_mask(i, cpu_sibling_map[cpu]) 1344 for_each_cpu_mask(i, per_cpu(cpu_sibling_map, cpu))
1346 cpu_clear(cpu, cpu_sibling_map[i]); 1345 cpu_clear(cpu, per_cpu(cpu_sibling_map, i));
1347 cpus_clear(cpu_sibling_map[cpu]); 1346 cpus_clear(per_cpu(cpu_sibling_map, cpu));
1348 1347
1349 c = &cpu_data(cpu); 1348 c = &cpu_data(cpu);
1350 1349