You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.3 KiB
44 lines
1.3 KiB
====================
|
|
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 verify
|
|
livepatch behavior. Debug information is logged to the kernel's message
|
|
buffer and parsed for expected messages. (Note: the tests will clear
|
|
the message buffer between individual tests.)
|
|
|
|
|
|
Config
|
|
------
|
|
|
|
Set these config options and their prerequisites:
|
|
|
|
CONFIG_LIVEPATCH=y
|
|
CONFIG_TEST_LIVEPATCH=m
|
|
|
|
|
|
Running the tests
|
|
-----------------
|
|
|
|
Test kernel modules are built as part of lib/ (make modules) and need to
|
|
be installed (make modules_install) as the test scripts will modprobe
|
|
them.
|
|
|
|
To run the livepatch selftests, from the top of the kernel source tree:
|
|
|
|
% make -C tools/testing/selftests TARGETS=livepatch run_tests
|
|
|
|
|
|
Adding tests
|
|
------------
|
|
|
|
See the common functions.sh file for the existing collection of utility
|
|
functions, most importantly set_dynamic_debug() and check_result(). The
|
|
latter function greps the kernel's ring buffer for "livepatch:" and
|
|
"test_klp" strings, so tests be sure to include one of those strings for
|
|
result comparison. Other utility functions include general module
|
|
loading and livepatch loading helpers (waiting for patch transitions,
|
|
sysfs entries, etc.)
|