2016-03-18 21:53:25 +00:00
|
|
|
if {[have_spec linux]} {
|
2013-01-16 14:57:33 +00:00
|
|
|
puts "Platform does not support managed dataspaces"; exit }
|
2011-12-22 15:19:25 +00:00
|
|
|
|
2017-10-12 12:33:04 +00:00
|
|
|
#
|
|
|
|
# We skip the non-executable fault test on platforms where this functionality
|
|
|
|
# is not supported.
|
|
|
|
#
|
|
|
|
proc non_executable_supported { } {
|
2017-10-13 14:23:10 +00:00
|
|
|
|
|
|
|
if {[have_spec hw] && [have_spec x86_64]} { return true }
|
2017-10-17 09:36:10 +00:00
|
|
|
if {[have_spec hw] && [have_spec arm]} { return true }
|
2017-10-13 12:18:29 +00:00
|
|
|
if {[have_spec nova] && [have_spec x86_64]} { return true }
|
2017-10-13 12:26:09 +00:00
|
|
|
if {[have_spec foc] && [have_spec x86_64]} { return true }
|
|
|
|
if {[have_spec foc] && [have_spec arm]} { return true }
|
2017-10-17 09:51:13 +00:00
|
|
|
if {[have_spec sel4] && [have_spec arm]} { return true }
|
2017-10-13 12:18:29 +00:00
|
|
|
|
2017-10-12 12:33:04 +00:00
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2011-12-22 15:19:25 +00:00
|
|
|
build "core init test/rm_fault"
|
|
|
|
|
|
|
|
create_boot_directory
|
|
|
|
|
|
|
|
install_config {
|
|
|
|
<config>
|
|
|
|
<parent-provides>
|
|
|
|
<service name="ROM"/>
|
|
|
|
<service name="CPU"/>
|
|
|
|
<service name="RM"/>
|
|
|
|
<service name="PD"/>
|
|
|
|
<service name="LOG"/>
|
|
|
|
</parent-provides>
|
|
|
|
<default-route>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</default-route>
|
2017-10-12 12:33:04 +00:00
|
|
|
<start name="test-rm_fault" caps="110">
|
2011-12-22 15:19:25 +00:00
|
|
|
<resource name="RAM" quantum="10M"/>
|
2017-10-12 12:33:04 +00:00
|
|
|
<config executable_fault_test="} [non_executable_supported] {"/>
|
2011-12-22 15:19:25 +00:00
|
|
|
</start>
|
|
|
|
</config>
|
|
|
|
}
|
|
|
|
|
2016-12-01 18:00:11 +00:00
|
|
|
build_boot_image "core ld.lib.so init test-rm_fault"
|
2011-12-22 15:19:25 +00:00
|
|
|
|
2017-05-23 13:05:55 +00:00
|
|
|
append qemu_args "-nographic "
|
2011-12-22 15:19:25 +00:00
|
|
|
|
2016-03-18 21:53:25 +00:00
|
|
|
run_genode_until {child "test-rm_fault" exited with exit value 0.*} 300
|