| 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); |