mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-29 23:53:32 +00:00
7fb2c3ea28
Add kselftest framework for tests to use. This is a light weight framework provides a set of interfaces to report test results. Tests can use these interfaces to report pass, and fail cases as well as when failure is due to configuration problems such as missing modules, or when a test that is should fail, fails as expected, and a test that should fail, passes. The framework uses POSIX standard return codes for reporting results to address the needs of users that want to run the kernel selftests from their user-space test suites and want to know why a test failed. In addition, the framework includes interfaces to use to report test statistics on number of tests passed and failed. Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> |
||
---|---|---|
.. | ||
breakpoints | ||
cpu-hotplug | ||
efivarfs | ||
firmware | ||
ftrace | ||
ipc | ||
kcmp | ||
memfd | ||
memory-hotplug | ||
mount | ||
mqueue | ||
net | ||
powerpc | ||
ptrace | ||
rcutorture | ||
sysctl | ||
timers | ||
user | ||
vm | ||
kselftest.h | ||
Makefile | ||
README.txt |
Linux Kernel Selftests The kernel contains a set of "self tests" under the tools/testing/selftests/ directory. These are intended to be small unit tests to exercise individual code paths in the kernel. On some systems, hot-plug tests could hang forever waiting for cpu and memory to be ready to be offlined. A special hot-plug target is created to run full range of hot-plug tests. In default mode, hot-plug tests run in safe mode with a limited scope. In limited mode, cpu-hotplug test is run on a single cpu as opposed to all hotplug capable cpus, and memory hotplug test is run on 2% of hotplug capable memory instead of 10%. Running the selftests (hotplug tests are run in limited mode) ============================================================= To build the tests: $ make -C tools/testing/selftests To run the tests: $ make -C tools/testing/selftests run_tests - note that some tests will require root privileges. To run only tests targeted for a single subsystem: (including hotplug targets in limited mode) $ make -C tools/testing/selftests TARGETS=cpu-hotplug run_tests See the top-level tools/testing/selftests/Makefile for the list of all possible targets. Running the full range hotplug selftests ======================================== To build the tests: $ make -C tools/testing/selftests hotplug To run the tests: $ make -C tools/testing/selftests run_hotplug - note that some tests will require root privileges. Contributing new tests ====================== In general, the rules for for selftests are * Do as much as you can if you're not root; * Don't take too long; * Don't break the build on any architecture, and * Don't cause the top-level "make run_tests" to fail if your feature is unconfigured.