# # \brief Test to affinity subspacing # \author Norman Feske # if {[have_spec platform_pbxa9] || (![have_spec nova] && ![have_spec foc])} { puts "Platform is unsupported." exit 0 } build "core init test/affinity" create_boot_directory install_config { <config> <parent-provides> <service name="LOG"/> <service name="CPU"/> <service name="RM"/> <service name="ROM"/> <service name="RAM"/> <service name="CAP"/> <service name="PD"/> <service name="SIGNAL"/> </parent-provides> <affinity-space width="2" /> <default-route> <any-service> <parent/> </any-service> </default-route> <start name="init"> <resource name="RAM" quantum="10M"/> <!-- assign the right half of the available CPUs --> <affinity xpos="1" width="1" /> <config> <parent-provides> <service name="LOG"/> <service name="CPU"/> <service name="RM"/> </parent-provides> <default-route> <any-service> <parent/> </any-service> </default-route> <!-- assign the leftmost half of CPUs to test-affinity --> <affinity-space width="2" /> <start name="test-affinity"> <resource name="RAM" quantum="2M"/> <affinity xpos="0" width="1" /> </start> </config> </start> </config> } append qemu_args " -nographic -m 64 -smp 8,cores=8 " build_boot_image "core init test-affinity" run_genode_until {.*Detected 2x1 CPUs.*} 60 puts "Test succeeded"