Something went wrong. Try again.
Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657====================Livepatch Self Tests====================
This is a small set of sanity tests for the kernel livepatching.
The test suite loads and unloads several test kernel modules to verifylivepatch behavior. Debug information is logged to the kernel's messagebuffer and parsed for expected messages. (Note: the tests will comparethe message buffer for only the duration of each individual test.)
Config------
Set CONFIG_LIVEPATCH=y option and it's prerequisites.
Building the tests------------------
To only build the tests without running them, run:
% make -C tools/testing/selftests/livepatch
The command above will compile all test modules and test programs, making themready to be packaged if so desired.
Running the tests-----------------
Test kernel modules are built before running the livepatch selftests. Themodules are located under test_modules directory, and are built as out-of-treemodules. This is specially useful since the same sources can be built andtested on systems with different kABI, ensuring they the tests are backwardscompatible. The modules will be loaded by the test scripts using insmod.
To run the livepatch selftests, from the top of the kernel source tree:
% make -C tools/testing/selftests TARGETS=livepatch run_tests
or
% make kselftest TARGETS=livepatch
Adding tests------------
See the common functions.sh file for the existing collection of utilityfunctions, most importantly setup_config(), start_test() andcheck_result(). The latter function greps the kernel's ring buffer for"livepatch:" and "test_klp" strings, so tests be sure to include one ofthose strings for result comparison. Other utility functions includegeneral module loading and livepatch loading helpers (waiting for patchtransitions, sysfs entries, etc.)