This page is archived and is no longer receiving updates.
It remains here because some of the content may still be useful.
Updates to seL4Test from seL4 10.1.x to 11.0.x
External
- List valid platforms if invalid platform is provided in build configuration.
- Add
IPCRIGHTS
tests for master and mcs to test newgrantreply
access right:IPCRIGHTS0001
, “seL4_Send needs write”IPCRIGHTS0002
, “seL4_Recv needs read”IPCRIGHTS0003
, “seL4_Send with caps needs grant”IPCRIGHTS0004
, “seL4_Call needs grant or grant-reply”IPCRIGHTS0005
, “seL4_Reply grant depends of the grant of previous seL4_Recv”
- add test
UNKNOWN_SYSCALL_001
, “Test seL4_VMEnter in a non-vm thread” to check cannot enter VM in no-vm thread on x86. - Added tests for maximum ASID pools usage:
VSPACE0003
, “Test create multiple ASID pools”VSPACE0004
, “Test running out of ASID pools”VSPACE0005
, “Test overassigning ASID pool”VSPACE0006
, “Test touching all available ASID pools”
- Add griddle support to sel4test via
easy-settings.cmake
file. - Re-enable serial_server tests on RISC-V with addition of userlevel serial driver.
- Change timeout time for
PREEMPT_REVOKE
to make test more robust. - Added tests to check IRQ routing:
SMPIRQ0001
, “Test multicore irqs”
- Enable TLS tests for RISC-V as they are now supported.
- Change RISC-V bad instruction value to
0xffffffff
in fault tests. This change was motivated by some simulators not trapping0x00000000
or0x0000
as invalid instructions. - Enable timer tests on RISC-V.
- Disable flaky
SCHED0000
on RISCV. - Update vspace test to support 40 bit PAs
- add
NUM_NODES
to overrideKernelMaxNumNodes
. This allows users to pass NUM_NODES on the command line to an init-build invocation and override the default of4
cores whenSMP=ON
. Example:../init-build.sh -DPLATFORM=imx8mq-evk -DAARCH32=1 -DSMP=1 -DNUM_NODES=2
- Disable device mem tests for spike.
- Change frame tests to not try and steal timer device frame from runtime and instead request device frames more reliably.
- set
Sel4testHaveTimer
andSel4testHaveCache
options to advanced ifSel4testAllowSettingsOverride
is not set. Otherwise any changes to these settings will get overridden. - Set
SEL4_CONFIG_DEFAULT_ADVANCED=On
. This will cause most CMake config options to be hidden apart from ones expected to be changed. - Add MCS option for configuring
KernelIsMCS
.-DMCS=ON
will enable MCS configurations and-DMCS=OFF
will use mainline configurations. - Remove
Remap
and useMap
instead in mapping tests due to kernel API change. - RISCV: Disable huge page test for Ariane
MULTICORE0003
: Extend to test different VSpaces. On x86 the kernel was only performing TLB cross-core invalidation if the VSpace that was being unmapped was running on the current core. This means that if a core unmaps a page from a different VSpace running on a different core then the cross-core invalidation wouldn’t happen. We extendMULTICORE0003
to test unmapping from different VSpaces as well as the same VSpace. We also now repeat the test a few times for if a kernel timer IRQ is received during any of them leading to a false success.
Internal
- Correctly initialize clocks for exynos5422 serial driver
- Improve test
SCHED0011
: compare timestamps in nanoseconds not microseconds to improve accuracy. Use period value instead as wait time instead of assuming 1s. - Switch to new
libelf
andlibcpio
API - Style source files.
- Use
seL4runtime
. - Refactor build scripts to keep up to date with build system changes.
- Refactor object allocation to use
libsel4rpc
to dynamically allocate additional resources instead of trying to preallocate everything. - Remove
autoconf.h
and globalConfiguration
library usage. - Add memory barriers in
SCHED0004
to prevent spurious failures. - Use custom IRQ handler allocation function in IRQ allocation so that some tests may borrow the caps.
- Rename
CONFIG_KERNEL_RT
toCONFIG_KERNEL_MCS
MULTICORE0003
: Reduce wait time to limit timer IRQ. This makes the test more reliable.