Lines Matching +full:4 +full:- +full:cores

2  * SMP parsing unit-tests
10 * See the COPYING.LIB file in the top-level directory.
26 #define SMP_MACHINE_NAME "TEST-SMP"
29 * Used to define the generic 3-level CPU topology hierarchy
30 * -sockets/cores/threads
36 .has_cores = hc, .cores = c, \
45 .cores = c, \
51 * Currently a 5-level topology hierarchy is supported on PC machines
52 * -sockets/dies/modules/cores/threads
61 .has_cores = he, .cores = e, \
67 * Currently a 4-level topology hierarchy is supported on ARM virt machines
68 * -sockets/clusters/cores/threads
75 .has_cores = hd, .cores = d, \
81 * Currently a 5-level topology hierarchy is supported on s390 ccw machines
82 * -drawers/books/sockets/cores/threads
91 .has_cores = he, .cores = e, \
97 * Currently QEMU supports up to a 8-level topology hierarchy, which is the
99 * -drawers/books/sockets/dies/clusters/modules/cores/threads
110 .has_cores = true, .cores = h, \
116 * @config - the given SMP configuration
117 * @expect_prefer_sockets - the expected parsing result for the
118 * valid configuration, when sockets are preferred over cores
119 * @expect_prefer_cores - the expected parsing result for the
120 * valid configuration, when cores are preferred over sockets
121 * @expect_error - the expected error report when the given
132 * List all the possible valid sub-collections of the generic 5
133 * topology parameters (i.e. cpus/maxcpus/sockets/cores/threads),
140 * expect: cpus=1,sockets=1,cores=1,threads=1,maxcpus=1 */
145 /* config: -smp 8
146 * prefer_sockets: cpus=8,sockets=8,cores=1,threads=1,maxcpus=8
147 * prefer_cores: cpus=8,sockets=1,cores=8,threads=1,maxcpus=8 */
152 /* config: -smp sockets=2
153 * expect: cpus=2,sockets=2,cores=1,threads=1,maxcpus=2 */
158 /* config: -smp cores=4
159 * expect: cpus=4,sockets=1,cores=4,threads=1,maxcpus=4 */
160 .config = SMP_CONFIG_GENERIC(F, 0, F, 0, T, 4, F, 0, F, 0),
161 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(4, 1, 4, 1, 4),
162 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(4, 1, 4, 1, 4),
164 /* config: -smp threads=2
165 * expect: cpus=2,sockets=1,cores=1,threads=2,maxcpus=2 */
170 /* config: -smp maxcpus=16
171 * prefer_sockets: cpus=16,sockets=16,cores=1,threads=1,maxcpus=16
172 * prefer_cores: cpus=16,sockets=1,cores=16,threads=1,maxcpus=16 */
177 /* config: -smp 8,sockets=2
178 * expect: cpus=8,sockets=2,cores=4,threads=1,maxcpus=8 */
180 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
181 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
183 /* config: -smp 8,cores=4
184 * expect: cpus=8,sockets=2,cores=4,threads=1,maxcpus=8 */
185 .config = SMP_CONFIG_GENERIC(T, 8, F, 0, T, 4, F, 0, F, 0),
186 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
187 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
189 /* config: -smp 8,threads=2
190 * prefer_sockets: cpus=8,sockets=4,cores=1,threads=2,maxcpus=8
191 * prefer_cores: cpus=8,sockets=1,cores=4,threads=2,maxcpus=8 */
193 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 4, 1, 2, 8),
194 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 1, 4, 2, 8),
196 /* config: -smp 8,maxcpus=16
197 * prefer_sockets: cpus=8,sockets=16,cores=1,threads=1,maxcpus=16
198 * prefer_cores: cpus=8,sockets=1,cores=16,threads=1,maxcpus=16 */
203 /* config: -smp sockets=2,cores=4
204 * expect: cpus=8,sockets=2,cores=4,threads=1,maxcpus=8 */
205 .config = SMP_CONFIG_GENERIC(F, 0, T, 2, T, 4, F, 0, F, 0),
206 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
207 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
209 /* config: -smp sockets=2,threads=2
210 * expect: cpus=4,sockets=2,cores=1,threads=2,maxcpus=4 */
212 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(4, 2, 1, 2, 4),
213 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(4, 2, 1, 2, 4),
215 /* config: -smp sockets=2,maxcpus=16
216 * expect: cpus=16,sockets=2,cores=8,threads=1,maxcpus=16 */
221 /* config: -smp cores=4,threads=2
222 * expect: cpus=8,sockets=1,cores=4,threads=2,maxcpus=8 */
223 .config = SMP_CONFIG_GENERIC(F, 0, F, 0, T, 4, T, 2, F, 0),
224 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 1, 4, 2, 8),
225 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 1, 4, 2, 8),
227 /* config: -smp cores=4,maxcpus=16
228 * expect: cpus=16,sockets=4,cores=4,threads=1,maxcpus=16 */
229 .config = SMP_CONFIG_GENERIC(F, 0, F, 0, T, 4, F, 0, T, 16),
230 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 4, 4, 1, 16),
231 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 4, 4, 1, 16),
233 /* config: -smp threads=2,maxcpus=16
234 * prefer_sockets: cpus=16,sockets=8,cores=1,threads=2,maxcpus=16
235 * prefer_cores: cpus=16,sockets=1,cores=8,threads=2,maxcpus=16 */
240 /* config: -smp 8,sockets=2,cores=4
241 * expect: cpus=8,sockets=2,cores=4,threads=1,maxcpus=8 */
242 .config = SMP_CONFIG_GENERIC(T, 8, T, 2, T, 4, F, 0, F, 0),
243 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
244 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
246 /* config: -smp 8,sockets=2,threads=2
247 * expect: cpus=8,sockets=2,cores=2,threads=2,maxcpus=8 */
252 /* config: -smp 8,sockets=2,maxcpus=16
253 * expect: cpus=8,sockets=2,cores=8,threads=1,maxcpus=16 */
258 /* config: -smp 8,cores=4,threads=2
259 * expect: cpus=8,sockets=1,cores=4,threads=2,maxcpus=8 */
260 .config = SMP_CONFIG_GENERIC(T, 8, F, 0, T, 4, T, 2, F, 0),
261 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 1, 4, 2, 8),
262 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 1, 4, 2, 8),
264 /* config: -smp 8,cores=4,maxcpus=16
265 * expect: cpus=8,sockets=4,cores=4,threads=1,maxcpus=16 */
266 .config = SMP_CONFIG_GENERIC(T, 8, F, 0, T, 4, F, 0, T, 16),
267 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 4, 4, 1, 16),
268 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 4, 4, 1, 16),
270 /* config: -smp 8,threads=2,maxcpus=16
271 * prefer_sockets: cpus=8,sockets=8,cores=1,threads=2,maxcpus=16
272 * prefer_cores: cpus=8,sockets=1,cores=8,threads=2,maxcpus=16 */
277 /* config: -smp sockets=2,cores=4,threads=2
278 * expect: cpus=16,sockets=2,cores=4,threads=2,maxcpus=16 */
279 .config = SMP_CONFIG_GENERIC(F, 0, T, 2, T, 4, T, 2, F, 0),
280 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
281 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
283 /* config: -smp sockets=2,cores=4,maxcpus=16
284 * expect: cpus=16,sockets=2,cores=4,threads=2,maxcpus=16 */
285 .config = SMP_CONFIG_GENERIC(F, 0, T, 2, T, 4, F, 0, T, 16),
286 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
287 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
289 /* config: -smp sockets=2,threads=2,maxcpus=16
290 * expect: cpus=16,sockets=2,cores=4,threads=2,maxcpus=16 */
292 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
293 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
295 /* config: -smp cores=4,threads=2,maxcpus=16
296 * expect: cpus=16,sockets=2,cores=4,threads=2,maxcpus=16 */
297 .config = SMP_CONFIG_GENERIC(F, 0, F, 0, T, 4, T, 2, T, 16),
298 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
299 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
301 /* config: -smp 8,sockets=2,cores=4,threads=1
302 * expect: cpus=8,sockets=2,cores=4,threads=1,maxcpus=8 */
303 .config = SMP_CONFIG_GENERIC(T, 8, T, 2, T, 4, T, 1, F, 0),
304 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
305 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 1, 8),
307 /* config: -smp 8,sockets=2,cores=4,maxcpus=16
308 * expect: cpus=8,sockets=2,cores=4,threads=2,maxcpus=16 */
309 .config = SMP_CONFIG_GENERIC(T, 8, T, 2, T, 4, F, 0, T, 16),
310 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
311 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
313 /* config: -smp 8,sockets=2,threads=2,maxcpus=16
314 * expect: cpus=8,sockets=2,cores=4,threads=2,maxcpus=16 */
316 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
317 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
319 /* config: -smp 8,cores=4,threads=2,maxcpus=16
320 * expect: cpus=8,sockets=2,cores=4,threads=2,maxcpus=16 */
321 .config = SMP_CONFIG_GENERIC(T, 8, F, 0, T, 4, T, 2, T, 16),
322 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
323 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
325 /* config: -smp sockets=2,cores=4,threads=2,maxcpus=16
326 * expect: cpus=16,sockets=2,cores=4,threads=2,maxcpus=16 */
327 .config = SMP_CONFIG_GENERIC(F, 0, T, 2, T, 4, T, 2, T, 16),
328 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
329 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(16, 2, 4, 2, 16),
331 /* config: -smp 8,sockets=2,cores=4,threads=2,maxcpus=16
332 * expect: cpus=8,sockets=2,cores=4,threads=2,maxcpus=16 */
333 .config = SMP_CONFIG_GENERIC(T, 8, T, 2, T, 4, T, 2, T, 16),
334 .expect_prefer_sockets = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
335 .expect_prefer_cores = CPU_TOPOLOGY_GENERIC(8, 2, 4, 2, 16),
340 * -smp 8,drawers=1,books=1,sockets=2,dies=1,clusters=1,modules=1,\
341 * cores=2,threads=2,maxcpus=8
342 * expect: cpus=8,sockets=2,cores=2,threads=2,maxcpus=8 */
351 /* config: -smp 2,modules=2 */
356 /* config: -smp 2,dies=2 */
361 /* config: -smp 2,clusters=2 */
365 /* config: -smp 2,books=2 */
370 /* config: -smp 2,drawers=2 */
375 /* config: -smp 8,sockets=2,cores=4,threads=2,maxcpus=8 */
376 .config = SMP_CONFIG_GENERIC(T, 8, T, 2, T, 4, T, 2, T, 8),
379 "sockets (2) * cores (4) * threads (2) "
382 /* config: -smp 18,sockets=2,cores=4,threads=2,maxcpus=16 */
383 .config = SMP_CONFIG_GENERIC(T, 18, T, 2, T, 4, T, 2, T, 16),
386 "sockets (2) * cores (4) * threads (2) "
390 * config: -smp 1
399 * config: -smp 4096
401 * 4095 (MAX_CPUS - 1) for testing.
411 /* config: -smp 16,sockets=2,modules=2,cores=4,threads=2,maxcpus=16 */
413 T, 4, T, 2, T, 16),
416 "sockets (2) * modules (2) * cores (4) * threads (2) "
419 /* config: -smp 34,sockets=2,modules=2,cores=4,threads=2,maxcpus=32 */
421 T, 4, T, 2, T, 32),
424 "sockets (2) * modules (2) * cores (4) * threads (2) "
431 /* config: -smp 16,sockets=2,dies=2,cores=4,threads=2,maxcpus=16 */
433 T, 4, T, 2, T, 16),
436 "sockets (2) * dies (2) * cores (4) * threads (2) "
439 /* config: -smp 34,sockets=2,dies=2,cores=4,threads=2,maxcpus=32 */
441 T, 4, T, 2, T, 32),
444 "sockets (2) * dies (2) * cores (4) * threads (2) "
452 * config: -smp 200,sockets=3,dies=5,modules=2,cores=4,\
456 2, T, 4, T, 2, T, 200),
460 "cores (4) * threads (2) != maxcpus (200)",
463 * config: -smp 242,sockets=3,dies=5,modules=2,cores=4,\
467 2, T, 4, T, 2, T, 240),
471 "cores (4) * threads (2) "
478 /* config: -smp 16,sockets=2,clusters=2,cores=4,threads=2,maxcpus=16 */
479 .config = SMP_CONFIG_WITH_CLUSTERS(T, 16, T, 2, T, 2, T, 4, T, 2, T, 16),
482 "sockets (2) * clusters (2) * cores (4) * threads (2) "
485 /* config: -smp 34,sockets=2,clusters=2,cores=4,threads=2,maxcpus=32 */
486 .config = SMP_CONFIG_WITH_CLUSTERS(T, 34, T, 2, T, 2, T, 4, T, 2, T, 32),
489 "sockets (2) * clusters (2) * cores (4) * threads (2) "
496 /* config: -smp 16,books=2,sockets=2,cores=4,threads=2,maxcpus=16 */
498 2, T, 4, T, 2, T, 16),
501 "books (2) * sockets (2) * cores (4) * threads (2) "
504 /* config: -smp 34,books=2,sockets=2,cores=4,threads=2,maxcpus=32 */
506 2, T, 4, T, 2, T, 32),
509 "books (2) * sockets (2) * cores (4) * threads (2) "
516 /* config: -smp 16,drawers=2,sockets=2,cores=4,threads=2,maxcpus=16 */
518 2, T, 4, T, 2, T, 16),
521 "drawers (2) * sockets (2) * cores (4) * threads (2) "
524 /* config: -smp 34,drawers=2,sockets=2,cores=4,threads=2,maxcpus=32 */
526 2, T, 4, T, 2, T, 32),
529 "drawers (2) * sockets (2) * cores (4) * threads (2) "
537 * config: -smp 200,drawers=3,books=5,sockets=2,cores=4,\
541 2, T, 4, T, 2, T, 200),
545 "cores (4) * threads (2) != maxcpus (200)",
548 * config: -smp 242,drawers=3,books=5,sockets=2,cores=4,\
552 2, T, 4, T, 2, T, 240),
556 "cores (4) * threads (2) "
564 * config: -smp 200,drawers=3,books=5,sockets=2,dies=4,\
565 * clusters=2,modules=3,cores=7,threads=2,\
568 .config = SMP_CONFIG_WITH_FULL_TOPO(200, 3, 5, 2, 4, 2, 3, 7, 2, 200),
571 "drawers (3) * books (5) * sockets (2) * dies (4) * "
572 "clusters (2) * modules (3) * cores (7) * threads (2) "
576 * config: -smp 2881,drawers=3,books=5,sockets=2,dies=4,\
577 * clusters=2,modules=3,cores=2,threads=2,
580 .config = SMP_CONFIG_WITH_FULL_TOPO(2881, 3, 5, 2, 4,
585 "dies (4) * clusters (2) * modules (3) * "
586 "cores (2) * threads (2) == maxcpus (2880) "
590 * config: -smp 1,drawers=3,books=5,sockets=2,dies=4,\
591 * clusters=2,modules=3,cores=3,threads=3,\
594 .config = SMP_CONFIG_WITH_FULL_TOPO(1, 3, 5, 2, 4, 2, 3, 3, 3, 6480),
604 * config: -smp 0,drawers=1,books=1,sockets=1,dies=1,\
605 * clusters=1,modules=1,cores=1,threads=1,\
614 * config: -smp 1,drawers=0,books=1,sockets=1,dies=1,\
615 * clusters=1,modules=1,cores=1,threads=1,\
624 * config: -smp 1,drawers=1,books=0,sockets=1,dies=1,\
625 * clusters=1,modules=1,cores=1,threads=1,\
634 * config: -smp 1,drawers=1,books=1,sockets=0,dies=1,\
635 * clusters=1,modules=1,cores=1,threads=1,
644 * config: -smp 1,drawers=1,books=1,sockets=1,dies=0,\
645 * clusters=1,modules=1,cores=1,threads=1,\
654 * config: -smp 1,drawers=1,books=1,sockets=1,dies=1,\
655 * clusters=0,modules=1,cores=1,threads=1,\
664 * config: -smp 1,drawers=1,books=1,sockets=1,dies=1,\
665 * clusters=1,modules=0,cores=1,threads=1,\
673 * Test "cores=0".
674 * config: -smp 1,drawers=1,books=1,sockets=1,dies=1,\
675 * clusters=1,modules=1,cores=0,threads=1,
684 * config: -smp 1,drawers=1,books=1,sockets=1,dies=1,\
685 * clusters=1,modules=1,cores=1,threads=0,\
694 * config: -smp 1,drawers=1,books=1,sockets=1,dies=1,\
695 * clusters=1,modules=1,cores=1,threads=1,\
715 " .has_cores = %5s, cores = %" PRId64 ",\n" in smp_config_to_string()
719 config->has_cpus ? "true" : "false", config->cpus, in smp_config_to_string()
720 config->has_drawers ? "true" : "false", config->drawers, in smp_config_to_string()
721 config->has_books ? "true" : "false", config->books, in smp_config_to_string()
722 config->has_sockets ? "true" : "false", config->sockets, in smp_config_to_string()
723 config->has_dies ? "true" : "false", config->dies, in smp_config_to_string()
724 config->has_clusters ? "true" : "false", config->clusters, in smp_config_to_string()
725 config->has_modules ? "true" : "false", config->modules, in smp_config_to_string()
726 config->has_cores ? "true" : "false", config->cores, in smp_config_to_string()
727 config->has_threads ? "true" : "false", config->threads, in smp_config_to_string()
728 config->has_maxcpus ? "true" : "false", config->maxcpus); in smp_config_to_string()
735 if (!topo->drawers || !topo->books || !topo->sockets) { in cpu_topology_get_threads_per_socket()
738 return topo->max_cpus / topo->drawers / topo->books / topo->sockets; in cpu_topology_get_threads_per_socket()
746 if (!topo->threads) { in cpu_topology_get_cores_per_socket()
749 return cpu_topology_get_threads_per_socket(topo) / topo->threads; in cpu_topology_get_cores_per_socket()
767 " .cores = %u,\n" in cpu_topology_to_string()
774 topo->cpus, topo->drawers, topo->books, in cpu_topology_to_string()
775 topo->sockets, topo->dies, topo->clusters, in cpu_topology_to_string()
776 topo->modules, topo->cores, topo->threads, in cpu_topology_to_string()
777 topo->max_cpus, threads_per_socket, cores_per_socket, in cpu_topology_to_string()
799 config->has_clusters); in check_parse()
806 output_topo_str = cpu_topology_to_string(&ms->smp, in check_parse()
809 mc->smp_props.has_clusters); in check_parse()
814 (ms->smp.cpus == expect_topo->cpus) && in check_parse()
815 (ms->smp.drawers == expect_topo->drawers) && in check_parse()
816 (ms->smp.books == expect_topo->books) && in check_parse()
817 (ms->smp.sockets == expect_topo->sockets) && in check_parse()
818 (ms->smp.dies == expect_topo->dies) && in check_parse()
819 (ms->smp.clusters == expect_topo->clusters) && in check_parse()
820 (ms->smp.modules == expect_topo->modules) && in check_parse()
821 (ms->smp.cores == expect_topo->cores) && in check_parse()
822 (ms->smp.threads == expect_topo->threads) && in check_parse()
823 (ms->smp.max_cpus == expect_topo->max_cpus) && in check_parse()
826 (mc->smp_props.has_clusters == config->has_clusters)) { in check_parse()
889 mc->smp_props.prefer_sockets = true; in smp_parse_test()
890 check_parse(ms, &data->config, &data->expect_prefer_sockets, in smp_parse_test()
891 data->expect_error, is_valid); in smp_parse_test()
893 mc->smp_props.prefer_sockets = false; in smp_parse_test()
894 check_parse(ms, &data->config, &data->expect_prefer_cores, in smp_parse_test()
895 data->expect_error, is_valid); in smp_parse_test()
901 if (!mc->smp_props.modules_supported) { in unsupported_params_init()
902 data->expect_prefer_sockets.modules = 1; in unsupported_params_init()
903 data->expect_prefer_cores.modules = 1; in unsupported_params_init()
906 if (!mc->smp_props.dies_supported) { in unsupported_params_init()
907 data->expect_prefer_sockets.dies = 1; in unsupported_params_init()
908 data->expect_prefer_cores.dies = 1; in unsupported_params_init()
911 if (!mc->smp_props.clusters_supported) { in unsupported_params_init()
912 data->expect_prefer_sockets.clusters = 1; in unsupported_params_init()
913 data->expect_prefer_cores.clusters = 1; in unsupported_params_init()
916 if (!mc->smp_props.books_supported) { in unsupported_params_init()
917 data->expect_prefer_sockets.books = 1; in unsupported_params_init()
918 data->expect_prefer_cores.books = 1; in unsupported_params_init()
921 if (!mc->smp_props.drawers_supported) { in unsupported_params_init()
922 data->expect_prefer_sockets.drawers = 1; in unsupported_params_init()
923 data->expect_prefer_cores.drawers = 1; in unsupported_params_init()
931 mc->min_cpus = MIN_CPUS; in machine_base_class_init()
932 mc->max_cpus = MAX_CPUS; in machine_base_class_init()
934 mc->name = g_strdup(SMP_MACHINE_NAME); in machine_base_class_init()
943 mc->min_cpus = MIN_CPUS + 1; in machine_generic_invalid_class_init()
944 mc->max_cpus = MAX_CPUS - 1; in machine_generic_invalid_class_init()
951 mc->smp_props.modules_supported = true; in machine_with_modules_class_init()
958 mc->smp_props.dies_supported = true; in machine_with_dies_class_init()
966 mc->smp_props.modules_supported = true; in machine_with_modules_dies_class_init()
967 mc->smp_props.dies_supported = true; in machine_with_modules_dies_class_init()
974 mc->smp_props.clusters_supported = true; in machine_with_clusters_class_init()
981 mc->smp_props.books_supported = true; in machine_with_books_class_init()
988 mc->smp_props.drawers_supported = true; in machine_with_drawers_class_init()
996 mc->smp_props.drawers_supported = true; in machine_with_drawers_books_class_init()
997 mc->smp_props.books_supported = true; in machine_with_drawers_books_class_init()
1004 mc->smp_props.drawers_supported = true; in machine_full_topo_class_init()
1005 mc->smp_props.books_supported = true; in machine_full_topo_class_init()
1006 mc->smp_props.dies_supported = true; in machine_full_topo_class_init()
1007 mc->smp_props.clusters_supported = true; in machine_full_topo_class_init()
1008 mc->smp_props.modules_supported = true; in machine_full_topo_class_init()
1527 .name = MACHINE_TYPE_NAME("smp-generic-valid"),
1530 .name = MACHINE_TYPE_NAME("smp-generic-invalid"),
1534 .name = MACHINE_TYPE_NAME("smp-with-modules"),
1538 .name = MACHINE_TYPE_NAME("smp-with-dies"),
1542 .name = MACHINE_TYPE_NAME("smp-with-modules-dies"),
1546 .name = MACHINE_TYPE_NAME("smp-with-clusters"),
1550 .name = MACHINE_TYPE_NAME("smp-with-books"),
1554 .name = MACHINE_TYPE_NAME("smp-with-drawers"),
1558 .name = MACHINE_TYPE_NAME("smp-with-drawers-books"),
1562 .name = MACHINE_TYPE_NAME("smp-full-topo"),
1576 g_test_add_data_func("/test-smp-parse/generic/valid", in DEFINE_TYPES()
1577 MACHINE_TYPE_NAME("smp-generic-valid"), in DEFINE_TYPES()
1579 g_test_add_data_func("/test-smp-parse/generic/invalid", in DEFINE_TYPES()
1580 MACHINE_TYPE_NAME("smp-generic-invalid"), in DEFINE_TYPES()
1582 g_test_add_data_func("/test-smp-parse/with_modules", in DEFINE_TYPES()
1583 MACHINE_TYPE_NAME("smp-with-modules"), in DEFINE_TYPES()
1585 g_test_add_data_func("/test-smp-parse/with_dies", in DEFINE_TYPES()
1586 MACHINE_TYPE_NAME("smp-with-dies"), in DEFINE_TYPES()
1588 g_test_add_data_func("/test-smp-parse/with_modules_dies", in DEFINE_TYPES()
1589 MACHINE_TYPE_NAME("smp-with-modules-dies"), in DEFINE_TYPES()
1591 g_test_add_data_func("/test-smp-parse/with_clusters", in DEFINE_TYPES()
1592 MACHINE_TYPE_NAME("smp-with-clusters"), in DEFINE_TYPES()
1594 g_test_add_data_func("/test-smp-parse/with_books", in DEFINE_TYPES()
1595 MACHINE_TYPE_NAME("smp-with-books"), in DEFINE_TYPES()
1597 g_test_add_data_func("/test-smp-parse/with_drawers", in DEFINE_TYPES()
1598 MACHINE_TYPE_NAME("smp-with-drawers"), in DEFINE_TYPES()
1600 g_test_add_data_func("/test-smp-parse/with_drawers_books", in DEFINE_TYPES()
1601 MACHINE_TYPE_NAME("smp-with-drawers-books"), in DEFINE_TYPES()
1603 g_test_add_data_func("/test-smp-parse/full", in DEFINE_TYPES()
1604 MACHINE_TYPE_NAME("smp-full-topo"), in DEFINE_TYPES()