[kernel] Add test mode, controlled by manifest

The manifest can now supply a list of boot flags, including "test".
Those get turned into the bootproto::args::flags field by the
bootloader. The kernel takes those and uses the test flag to control
enabling syscalls with the new "test" attribute, like the new
test_finish syscall, which lets automated tests call back to the kernel
to shut down the system.
This commit is contained in:
Justin C. Miller
2022-02-03 19:45:46 -08:00
parent 401e662f0b
commit 0e80c19d3d
12 changed files with 59 additions and 11 deletions

View File

@@ -42,4 +42,9 @@ interface syscalls [syscall] {
param clone ref object [out] # The new handle
param mask uint32 # The capability bitmask
}
# Testing mode only: Have the kernel finish and exit QEMU with the given exit code
function test_finish [test] {
param exit_code uint32
}
}