Tests¶
TuxRun support some tests, each tests is supported on some but not all architectures.
Listing tests
You can list the supported tests with:
tuxrun --list-tests
FVP AEMvA device¶
The following tests are supported by the default root filesystem.
Device | Tests | Parameters |
---|---|---|
fvp-aemva | command | |
fvp-aemva | kselftest-(arm64, gpio, ipc, ir, kcmp, kexec, *...) | KSELFTEST, SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
fvp-aemva | kunit* | |
fvp-aemva | ltp-(fcntl-locktests, fs_bind, fs_perms_simple, fsx, nptl, smoke) | SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
fvp-aemva | perf | PERF |
fvp-aemva | rcutorture | |
fvp-aemva | v4l2 |
The following tests are not supported by the default root filesystem. You should provide a custom root filesystem.
Device | Tests | Parameters |
---|---|---|
fvp-aemva | libgpiod | |
fvp-aemva | libhugetlbfs | |
fvp-aemva | ltp-(cap_bounds, commands, containers, controllers, crypto, cve, filecaps, fs, hugetlb, io, ipc, math, mm, pty, sched, securebits, syscalls, tracing) | SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
Passing parameters
In order to pass parameters for kselftest or perf, use
tuxrun --parameters KSELFTEST=http://.../kselftest.tar.xz
or
tuxrun --parameters PERF=http://.../perf.tar.xz
kselftest parameters
The CPUPOWER
and KSELFTEST
parameters are not mandatory. If kselftest
is present on the filesystem (in /opt/kselftests/default-in-kernel/
) then the
parameter is not required.
Running a commands
When running a commands test passing a --parameters command-name=custom-test-name
ltp parameter
The SKIPFILE
parameter is not mandatory but allows to specify a skipfile
present on the root filesystem.
kselftest and ltp sharding
In order to run kselftest and/or ltp with sharding, define SHARD_NUMBER
to the number of shards and SHARD_INDEX
to the shard to run. The list of
kselftest or ltp tests will be sharded bySHARD_NUMBER
and only the
SHARD_INDEX
part will be ran.
KUnit config
In order to run KUnit tests, the kernel should be compiled with
CONFIG_KUNIT=m
CONFIG_KUNIT_ALL_TESTS=m
--modules https://.../modules.tar.xz
.
FVP Modello devices¶
Device | Tests | Parameters |
---|---|---|
fvp-morello-android | binder | |
fvp-morello-android | bionic | GTEST_FILTER* BIONIC_TEST_TYPE* |
fvp-morello-android | boottest | |
fvp-morello-android | boringssl | SYSTEM_URL |
fvp-morello-android | compartment | USERDATA |
fvp-morello-android | device-tree | |
fvp-morello-android | dvfs | |
fvp-morello-android | libjpeg-turbo | LIBJPEG_TURBO_URL, SYSTEM_URL |
fvp-morello-android | libpdfium | PDFIUM_URL, SYSTEM_URL |
fvp-morello-android | libpng | PNG_URL, SYSTEM_URL |
fvp-morello-android | lldb | LLDB_URL, TC_URL |
fvp-morello-android | logd | USERDATA |
fvp-morello-android | libpcre | |
fvp-morello-android | multicore | |
fvp-morello-android | smc91x | |
fvp-morello-android | virtio_net | |
fvp-morello-android | zlib | SYSTEM_URL |
fvp-morello-busybox | purecap | |
fvp-morello-busybox | smc91x | |
fvp-morello-busybox | virtio_net | |
fvp-morello-busybox | virtiop9 | |
fvp-morello-debian | debian-purecap | |
fvp-morello-oe | fwts |
Passing parameters
In order to pass parameters, use tuxrun --parameters USERDATA=http://.../userdata.tar.xz
Default parameters
GTEST_FILTER is optional and defaults to
string_nofortify.*-string_nofortify.strlcat_overread:string_nofortify.bcopy:string_nofortify.memmove
static
. Valid values are dynamic
and static
.
QEMU devices¶
The following tests are supported by the default root filesystem.
Device | Tests | Parameters |
---|---|---|
qemu-* | command | |
qemu-* | kselftest-(arm64, gpio, ipc, ir, kcmp, kexec, *...) | CPUPOWER, KSELFTEST, SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
qemu-* | kunit* | |
qemu-* | ltp-(fcntl-locktests, fs_bind, fs_perms_simple, fsx, nptl, smoke) | SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
qemu-* | perf | PERF |
qemu-* | rcutorture | |
qemu-* | v4l2 |
The following tests are not supported by the default root filesystem. You should provide a custom root filesystem.
Device | Tests | Parameters |
---|---|---|
qemu-* | libgpiod | |
qemu-* | libhugetlbfs | |
qemu-* | ltp-(cap_bounds, commands, containers, controllers, crypto, cve, filecaps, fs, hugetlb, io, ipc, math, mm, pty, sched, securebits, syscalls, tracing) | SKIPFILE, SHARD_NUMBER, SHARD_INDEX |
Passing parameters
In order to pass parameters for kselftest or perf, use
tuxrun --parameters KSELFTEST=http://.../kselftest.tar.xz
or
tuxrun --parameters PERF=http://.../perf.tar.xz
kselftest parameters
The CPUPOWER
and KSELFTEST
parameters are not mandatory. If kselftest
is present on the filesystem (in /opt/kselftests/default-in-kernel/
) then the
parameter is not required.
Running a commands
When running a commands test passing a --parameters command-name=custom-test-name
ltp parameter
The SKIPFILE
parameter is not mandatory but allows to specify a skipfile
present on the root filesystem.
kselftest and ltp sharding
In order to run kselftest and/or ltp with sharding, define SHARD_NUMBER
to the number of shards and SHARD_INDEX
to the shard to run. The list of
kselftest or ltp tests will be sharded bySHARD_NUMBER
and only the
SHARD_INDEX
part will be ran.
kselftest-arm64
Kselftest-arm64 are tests that can run on a qemu-arm64 machine.
KUnit config
In order to run KUnit tests, the kernel should be compiled with
CONFIG_KUNIT=m
CONFIG_KUNIT_ALL_TESTS=m
--modules https://.../modules.tar.xz
.