| Ralf Baechle | f5d6c63 | 2006-11-29 15:04:08 +0000 | [diff] [blame] | 1 | #include <linux/cpu.h> | 
|  | 2 | #include <linux/cpumask.h> | 
|  | 3 | #include <linux/init.h> | 
|  | 4 | #include <linux/node.h> | 
|  | 5 | #include <linux/nodemask.h> | 
|  | 6 | #include <linux/percpu.h> | 
|  | 7 |  | 
|  | 8 | static DEFINE_PER_CPU(struct cpu, cpu_devices); | 
|  | 9 |  | 
|  | 10 | static int __init topology_init(void) | 
|  | 11 | { | 
|  | 12 | int i, ret; | 
|  | 13 |  | 
|  | 14 | #ifdef CONFIG_NUMA | 
|  | 15 | for_each_online_node(i) | 
|  | 16 | register_one_node(i); | 
|  | 17 | #endif /* CONFIG_NUMA */ | 
|  | 18 |  | 
|  | 19 | for_each_present_cpu(i) { | 
|  | 20 | ret = register_cpu(&per_cpu(cpu_devices, i), i); | 
|  | 21 | if (ret) | 
|  | 22 | printk(KERN_WARNING "topology_init: register_cpu %d " | 
|  | 23 | "failed (%d)\n", i, ret); | 
|  | 24 | } | 
|  | 25 |  | 
|  | 26 | return 0; | 
|  | 27 | } | 
|  | 28 |  | 
|  | 29 | subsys_initcall(topology_init); |