summaryrefslogtreecommitdiffstats
path: root/kernel/cpu.c
diff options
context:
space:
mode:
authorMike Travis2008-07-25 03:21:30 +0200
committerIngo Molnar2008-07-26 16:40:33 +0200
commit6524d938b3360504b43a1278b5a8403e85383d1a (patch)
tree8edbe9e88883e992f63c68ca0f1ea3ab4594ebb9 /kernel/cpu.c
parentcpumask: make cpumask_of_cpu_map generic (diff)
downloadkernel-qcow2-linux-6524d938b3360504b43a1278b5a8403e85383d1a.tar.gz
kernel-qcow2-linux-6524d938b3360504b43a1278b5a8403e85383d1a.tar.xz
kernel-qcow2-linux-6524d938b3360504b43a1278b5a8403e85383d1a.zip
cpumask: put cpumask_of_cpu_map in the initdata section
* Create the cpumask_of_cpu_map statically in the init data section using NR_CPUS but replace it during boot up with one sized by nr_cpu_ids (num possible cpus). Signed-off-by: Mike Travis <travis@sgi.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Jack Steiner <steiner@sgi.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/cpu.c')
-rw-r--r--kernel/cpu.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/kernel/cpu.c b/kernel/cpu.c
index fe31ff3d3809..9d4e1c28c053 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -462,7 +462,6 @@ out:
#endif /* CONFIG_SMP */
-#ifndef CONFIG_HAVE_CPUMASK_OF_CPU_MAP
/* 64 bits of zeros, for initializers. */
#if BITS_PER_LONG == 32
#define Z64 0, 0
@@ -509,7 +508,11 @@ out:
/* We want this statically initialized, just to be safe. We try not
* to waste too much space, either. */
-static const cpumask_t cpumask_map[] = {
+static const cpumask_t cpumask_map[]
+#ifdef CONFIG_HAVE_CPUMASK_OF_CPU_MAP
+__initdata
+#endif
+= {
CMI0(0), CMI0(1), CMI0(2), CMI0(3),
#if NR_CPUS > 4
CMI0(4), CMI0(5), CMI0(6), CMI0(7),
@@ -569,4 +572,3 @@ static const cpumask_t cpumask_map[] = {
};
const cpumask_t *cpumask_of_cpu_map = cpumask_map;
-#endif /* !CONFIG_HAVE_CPUMASK_OF_CPU_MAP */