summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/smp.c
diff options
context:
space:
mode:
authorSteve French <sfrench@us.ibm.com>2006-02-22 23:38:53 +0000
committerSteve French <sfrench@us.ibm.com>2006-02-22 23:38:53 +0000
commit5d2f248a5f3acac4b763439327c92091be7abb1c (patch)
tree8f30098a6d17c0367adfbb780e5a8d9a5c43ad5a /arch/mips/kernel/smp.c
parenta048d7a8704b35ff6372fdf5eedd4533f37b1885 (diff)
parent9e956c2dac9bec602ed1ba29181b45ba6d2b6448 (diff)
downloadkernel-crypto-5d2f248a5f3acac4b763439327c92091be7abb1c.tar.gz
kernel-crypto-5d2f248a5f3acac4b763439327c92091be7abb1c.tar.xz
kernel-crypto-5d2f248a5f3acac4b763439327c92091be7abb1c.zip
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'arch/mips/kernel/smp.c')
-rw-r--r--arch/mips/kernel/smp.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c
index 25472fcaf71..5e189862e52 100644
--- a/arch/mips/kernel/smp.c
+++ b/arch/mips/kernel/smp.c
@@ -29,6 +29,7 @@
#include <linux/timex.h>
#include <linux/sched.h>
#include <linux/cpumask.h>
+#include <linux/cpu.h>
#include <asm/atomic.h>
#include <asm/cpu.h>
@@ -424,6 +425,25 @@ void flush_tlb_one(unsigned long vaddr)
local_flush_tlb_one(vaddr);
}
+static DEFINE_PER_CPU(struct cpu, cpu_devices);
+
+static int __init topology_init(void)
+{
+ int cpu;
+ int ret;
+
+ for_each_cpu(cpu) {
+ ret = register_cpu(&per_cpu(cpu_devices, cpu), cpu, NULL);
+ if (ret)
+ printk(KERN_WARNING "topology_init: register_cpu %d "
+ "failed (%d)\n", cpu, ret);
+ }
+
+ return 0;
+}
+
+subsys_initcall(topology_init);
+
EXPORT_SYMBOL(flush_tlb_page);
EXPORT_SYMBOL(flush_tlb_one);
EXPORT_SYMBOL(cpu_data);