diff options
Diffstat (limited to 'arch/powerpc/include/asm/topology.h')
-rw-r--r-- | arch/powerpc/include/asm/topology.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/topology.h b/arch/powerpc/include/asm/topology.h index 8b3b46b7b0f2..329771559cbb 100644 --- a/arch/powerpc/include/asm/topology.h +++ b/arch/powerpc/include/asm/topology.h | |||
@@ -44,8 +44,22 @@ extern void __init dump_numa_cpu_topology(void); | |||
44 | extern int sysfs_add_device_to_node(struct device *dev, int nid); | 44 | extern int sysfs_add_device_to_node(struct device *dev, int nid); |
45 | extern void sysfs_remove_device_from_node(struct device *dev, int nid); | 45 | extern void sysfs_remove_device_from_node(struct device *dev, int nid); |
46 | 46 | ||
47 | static inline int early_cpu_to_node(int cpu) | ||
48 | { | ||
49 | int nid; | ||
50 | |||
51 | nid = numa_cpu_lookup_table[cpu]; | ||
52 | |||
53 | /* | ||
54 | * Fall back to node 0 if nid is unset (it should be, except bugs). | ||
55 | * This allows callers to safely do NODE_DATA(early_cpu_to_node(cpu)). | ||
56 | */ | ||
57 | return (nid < 0) ? 0 : nid; | ||
58 | } | ||
47 | #else | 59 | #else |
48 | 60 | ||
61 | static inline int early_cpu_to_node(int cpu) { return 0; } | ||
62 | |||
49 | static inline void dump_numa_cpu_topology(void) {} | 63 | static inline void dump_numa_cpu_topology(void) {} |
50 | 64 | ||
51 | static inline int sysfs_add_device_to_node(struct device *dev, int nid) | 65 | static inline int sysfs_add_device_to_node(struct device *dev, int nid) |