浏览代码

cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc64

Impact: cleanup, futureproof

In fact, all cpumask ops will only be valid (in general) for bit
numbers < nr_cpu_ids.  So use that instead of NR_CPUS in various
places.

This is always safe: no cpu number can be >= nr_cpu_ids, and
nr_cpu_ids is initialized to NR_CPUS at boot.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Mike Travis <travis@sgi.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Rusty Russell 16 年之前
父节点
当前提交
e305cb8f09
共有 3 个文件被更改,包括 4 次插入4 次删除
  1. 1 1
      arch/sparc/kernel/ds.c
  2. 2 2
      arch/sparc/kernel/irq_64.c
  3. 1 1
      arch/sparc/mm/init_64.c

+ 1 - 1
arch/sparc/kernel/ds.c

@@ -653,7 +653,7 @@ static void __cpuinit dr_cpu_data(struct ds_info *dp,
 		if (cpu_list[i] == CPU_SENTINEL)
 		if (cpu_list[i] == CPU_SENTINEL)
 			continue;
 			continue;
 
 
-		if (cpu_list[i] < NR_CPUS)
+		if (cpu_list[i] < nr_cpu_ids)
 			cpu_set(cpu_list[i], mask);
 			cpu_set(cpu_list[i], mask);
 	}
 	}
 
 

+ 2 - 2
arch/sparc/kernel/irq_64.c

@@ -265,12 +265,12 @@ static int irq_choose_cpu(unsigned int virt_irq)
 		spin_lock_irqsave(&irq_rover_lock, flags);
 		spin_lock_irqsave(&irq_rover_lock, flags);
 
 
 		while (!cpu_online(irq_rover)) {
 		while (!cpu_online(irq_rover)) {
-			if (++irq_rover >= NR_CPUS)
+			if (++irq_rover >= nr_cpu_ids)
 				irq_rover = 0;
 				irq_rover = 0;
 		}
 		}
 		cpuid = irq_rover;
 		cpuid = irq_rover;
 		do {
 		do {
-			if (++irq_rover >= NR_CPUS)
+			if (++irq_rover >= nr_cpu_ids)
 				irq_rover = 0;
 				irq_rover = 0;
 		} while (!cpu_online(irq_rover));
 		} while (!cpu_online(irq_rover));
 
 

+ 1 - 1
arch/sparc/mm/init_64.c

@@ -1092,7 +1092,7 @@ static void __init numa_parse_mdesc_group_cpus(struct mdesc_handle *md,
 		if (strcmp(name, "cpu"))
 		if (strcmp(name, "cpu"))
 			continue;
 			continue;
 		id = mdesc_get_property(md, target, "id", NULL);
 		id = mdesc_get_property(md, target, "id", NULL);
-		if (*id < NR_CPUS)
+		if (*id < nr_cpu_ids)
 			cpu_set(*id, *mask);
 			cpu_set(*id, *mask);
 	}
 	}
 }
 }