The test suite is filled with tests that make assumptions (e.g. about exactly when other threads will be scheduled) that don't work when there is another CPU available to handle the load. Add a feature to the test suite that can "hold" all but one CPU while the test executes, leveraging the very nice setup/teardown callbacks to do it. When there is only one CPU, this becomes a very fast noop of course. Note that the hold is done by disabling interrupts and spinning, so it comes with significant CPU cost and tends to drive up the load on the CI system (and cause other spurious failures on unrelated tests!), so this can't be used for long-running test cases. Signed-off-by: Andy Ross <andrew.j.ross@intel.com> |
||
|---|---|---|
| .. | ||
| arch | ||
| syscalls | ||
| kernel_arch_thread.h | ||
| offsets.h | ||
| syscall_list.h | ||
| syscall_macros.h | ||
| ztest_assert.h | ||
| ztest_mock.h | ||
| ztest_test.h | ||
| ztest.h | ||