diff options
Diffstat (limited to 'include/linux/topology.h')
-rw-r--r-- | include/linux/topology.h | 46 |
1 files changed, 2 insertions, 44 deletions
diff --git a/include/linux/topology.h b/include/linux/topology.h index e26db031303b..e91cd43394df 100644 --- a/include/linux/topology.h +++ b/include/linux/topology.h | |||
@@ -70,7 +70,6 @@ int arch_update_cpu_topology(void); | |||
70 | * Below are the 3 major initializers used in building sched_domains: | 70 | * Below are the 3 major initializers used in building sched_domains: |
71 | * SD_SIBLING_INIT, for SMT domains | 71 | * SD_SIBLING_INIT, for SMT domains |
72 | * SD_CPU_INIT, for SMP domains | 72 | * SD_CPU_INIT, for SMP domains |
73 | * SD_NODE_INIT, for NUMA domains | ||
74 | * | 73 | * |
75 | * Any architecture that cares to do any tuning to these values should do so | 74 | * Any architecture that cares to do any tuning to these values should do so |
76 | * by defining their own arch-specific initializer in include/asm/topology.h. | 75 | * by defining their own arch-specific initializer in include/asm/topology.h. |
@@ -99,7 +98,6 @@ int arch_update_cpu_topology(void); | |||
99 | | 0*SD_BALANCE_WAKE \ | 98 | | 0*SD_BALANCE_WAKE \ |
100 | | 1*SD_WAKE_AFFINE \ | 99 | | 1*SD_WAKE_AFFINE \ |
101 | | 1*SD_SHARE_CPUPOWER \ | 100 | | 1*SD_SHARE_CPUPOWER \ |
102 | | 0*SD_POWERSAVINGS_BALANCE \ | ||
103 | | 1*SD_SHARE_PKG_RESOURCES \ | 101 | | 1*SD_SHARE_PKG_RESOURCES \ |
104 | | 0*SD_SERIALIZE \ | 102 | | 0*SD_SERIALIZE \ |
105 | | 0*SD_PREFER_SIBLING \ | 103 | | 0*SD_PREFER_SIBLING \ |
@@ -135,8 +133,6 @@ int arch_update_cpu_topology(void); | |||
135 | | 0*SD_SHARE_CPUPOWER \ | 133 | | 0*SD_SHARE_CPUPOWER \ |
136 | | 1*SD_SHARE_PKG_RESOURCES \ | 134 | | 1*SD_SHARE_PKG_RESOURCES \ |
137 | | 0*SD_SERIALIZE \ | 135 | | 0*SD_SERIALIZE \ |
138 | | sd_balance_for_mc_power() \ | ||
139 | | sd_power_saving_flags() \ | ||
140 | , \ | 136 | , \ |
141 | .last_balance = jiffies, \ | 137 | .last_balance = jiffies, \ |
142 | .balance_interval = 1, \ | 138 | .balance_interval = 1, \ |
@@ -168,56 +164,18 @@ int arch_update_cpu_topology(void); | |||
168 | | 0*SD_SHARE_CPUPOWER \ | 164 | | 0*SD_SHARE_CPUPOWER \ |
169 | | 0*SD_SHARE_PKG_RESOURCES \ | 165 | | 0*SD_SHARE_PKG_RESOURCES \ |
170 | | 0*SD_SERIALIZE \ | 166 | | 0*SD_SERIALIZE \ |
171 | | sd_balance_for_package_power() \ | ||
172 | | sd_power_saving_flags() \ | ||
173 | , \ | 167 | , \ |
174 | .last_balance = jiffies, \ | 168 | .last_balance = jiffies, \ |
175 | .balance_interval = 1, \ | 169 | .balance_interval = 1, \ |
176 | } | 170 | } |
177 | #endif | 171 | #endif |
178 | 172 | ||
179 | /* sched_domains SD_ALLNODES_INIT for NUMA machines */ | ||
180 | #define SD_ALLNODES_INIT (struct sched_domain) { \ | ||
181 | .min_interval = 64, \ | ||
182 | .max_interval = 64*num_online_cpus(), \ | ||
183 | .busy_factor = 128, \ | ||
184 | .imbalance_pct = 133, \ | ||
185 | .cache_nice_tries = 1, \ | ||
186 | .busy_idx = 3, \ | ||
187 | .idle_idx = 3, \ | ||
188 | .flags = 1*SD_LOAD_BALANCE \ | ||
189 | | 1*SD_BALANCE_NEWIDLE \ | ||
190 | | 0*SD_BALANCE_EXEC \ | ||
191 | | 0*SD_BALANCE_FORK \ | ||
192 | | 0*SD_BALANCE_WAKE \ | ||
193 | | 0*SD_WAKE_AFFINE \ | ||
194 | | 0*SD_SHARE_CPUPOWER \ | ||
195 | | 0*SD_POWERSAVINGS_BALANCE \ | ||
196 | | 0*SD_SHARE_PKG_RESOURCES \ | ||
197 | | 1*SD_SERIALIZE \ | ||
198 | | 0*SD_PREFER_SIBLING \ | ||
199 | , \ | ||
200 | .last_balance = jiffies, \ | ||
201 | .balance_interval = 64, \ | ||
202 | } | ||
203 | |||
204 | #ifndef SD_NODES_PER_DOMAIN | ||
205 | #define SD_NODES_PER_DOMAIN 16 | ||
206 | #endif | ||
207 | |||
208 | #ifdef CONFIG_SCHED_BOOK | 173 | #ifdef CONFIG_SCHED_BOOK |
209 | #ifndef SD_BOOK_INIT | 174 | #ifndef SD_BOOK_INIT |
210 | #error Please define an appropriate SD_BOOK_INIT in include/asm/topology.h!!! | 175 | #error Please define an appropriate SD_BOOK_INIT in include/asm/topology.h!!! |
211 | #endif | 176 | #endif |
212 | #endif /* CONFIG_SCHED_BOOK */ | 177 | #endif /* CONFIG_SCHED_BOOK */ |
213 | 178 | ||
214 | #ifdef CONFIG_NUMA | ||
215 | #ifndef SD_NODE_INIT | ||
216 | #error Please define an appropriate SD_NODE_INIT in include/asm/topology.h!!! | ||
217 | #endif | ||
218 | |||
219 | #endif /* CONFIG_NUMA */ | ||
220 | |||
221 | #ifdef CONFIG_USE_PERCPU_NUMA_NODE_ID | 179 | #ifdef CONFIG_USE_PERCPU_NUMA_NODE_ID |
222 | DECLARE_PER_CPU(int, numa_node); | 180 | DECLARE_PER_CPU(int, numa_node); |
223 | 181 | ||
@@ -239,7 +197,7 @@ static inline int cpu_to_node(int cpu) | |||
239 | #ifndef set_numa_node | 197 | #ifndef set_numa_node |
240 | static inline void set_numa_node(int node) | 198 | static inline void set_numa_node(int node) |
241 | { | 199 | { |
242 | percpu_write(numa_node, node); | 200 | this_cpu_write(numa_node, node); |
243 | } | 201 | } |
244 | #endif | 202 | #endif |
245 | 203 | ||
@@ -274,7 +232,7 @@ DECLARE_PER_CPU(int, _numa_mem_); | |||
274 | #ifndef set_numa_mem | 232 | #ifndef set_numa_mem |
275 | static inline void set_numa_mem(int node) | 233 | static inline void set_numa_mem(int node) |
276 | { | 234 | { |
277 | percpu_write(_numa_mem_, node); | 235 | this_cpu_write(_numa_mem_, node); |
278 | } | 236 | } |
279 | #endif | 237 | #endif |
280 | 238 | ||