aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-06-23 18:50:29 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-06-23 18:50:29 -0700
commitd2cec97bc421d6f9c2ee0d9bd8e0ce47d0022cac (patch)
tree527641d4a33f472af4e9b233f65108e7cf0a96d1 /kernel
parent8c1ce9d6d628945ff23f844dbe9f21f5d5383b99 (diff)
downloadhistory-d2cec97bc421d6f9c2ee0d9bd8e0ce47d0022cac.tar.gz
[PATCH] cpumask: make cpu_present_map real even on non-smp
From: Paul Jackson <pj@sgi.com> This patch makes cpu_present_map a real map for all configurations, instead of a constant for non-SMP. It also moves the definition of cpu_present_map out of kernel/cpu.c into kernel/sched.c, because cpu.c isn't compiled into non-SMP kernels. The pattern is that each of the possible, present and online cpu maps are actual kernel global cpumask_t variables, for all configurations. They are documented in include/linux/cpumask.h. Some of the UP (NR_CPUS=1) code cheats, and hardcodes the assumption that the single bit position of these maps is always set, as an optimization. Signed-off-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/cpu.c8
-rw-r--r--kernel/sched.c10
2 files changed, 10 insertions, 8 deletions
diff --git a/kernel/cpu.c b/kernel/cpu.c
index 72b984c67eb32d..083521327e64dc 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -20,14 +20,6 @@
DECLARE_MUTEX(cpucontrol);
static struct notifier_block *cpu_chain;
-/*
- * Represents all cpu's present in the system
- * In systems capable of hotplug, this map could dynamically grow
- * as new cpu's are detected in the system via any platform specific
- * method, such as ACPI for e.g.
- */
-cpumask_t cpu_present_map;
-EXPORT_SYMBOL(cpu_present_map);
/* Need to know about CPUs going up/down? */
int register_cpu_notifier(struct notifier_block *nb)
diff --git a/kernel/sched.c b/kernel/sched.c
index 8f49ba1202c3a4..a614d7ebf7c3af 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2941,6 +2941,16 @@ out_unlock:
return retval;
}
+/*
+ * Represents all cpu's present in the system
+ * In systems capable of hotplug, this map could dynamically grow
+ * as new cpu's are detected in the system via any platform specific
+ * method, such as ACPI for e.g.
+ */
+
+cpumask_t cpu_present_map;
+EXPORT_SYMBOL(cpu_present_map);
+
/**
* sys_sched_getaffinity - get the cpu affinity of a process
* @pid: pid of the process