2#include "pedigree/kernel/Log.h"
3#include "pedigree/kernel/linker/KernelElf.h"
4#include "pedigree/kernel/process/Scheduler.h"
5#include "pedigree/kernel/process/Thread.h"
6#include "pedigree/kernel/time/Time.h"
8#include "modules/Module.h"
9#if !HOSTED || !PEDIGREE_HOSTED_SMOKE_TESTS || !THREADS
10#error "The swap VM fixture requires hosted smoke tests with threads"
12extern bool runSwapRegressions();
13extern void system_reset();
16 char name[] =
"swap-vm-tests";
17 const auto deadline = Time::getTicks() + 10 * Time::Multiplier::Second;
19 if (Time::getTicks() >= deadline) {
20 ERROR(
"SWAP-VM-TEST: FAIL fixture did not become active");
21 NOTICE(
"SWAP-VM-TEST: END FAIL");
27 const bool passed = runSwapRegressions();
29 NOTICE(
"SWAP-VM-TEST: END FAIL");
31 return passed ? 0 : 1;
37 thread->setName(
"Swap VM contracts");
43MODULE_INFO_NON_UNLOADABLE(
"swap-vm-tests", &entry, &exit,
"vfs");
static KernelElf & instance()
static Scheduler & instance()