Skip to content

SUSE/qa_test_klp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shell scripts to stress Linux Kernel Live Patching infrastructure. These
scripts try to induce a few stressful situations for the live patching
infrastructure in the hope of making bugs creep out of their hideouts.

Brief test case description
---------------------------

TC3 Patch under pressure
    * Patch a heavily hammered function in kernel.

TC5 Test kernel live patching in quick succession
    * Apply one patch after another in quick succession.

TC6 Patch while CPUs are busy
    * Make CPUs busy in user space and patch.

TC7 Test kernel live patching in low-memory condition
    * Run a workload that will bring the system close to OOM and then start
      patching.
    * Requires hiworkload (needs to be compiled).

TC8 Patch with replace-all
    * Make sure "replace-all" KLP function works as expected.

TC10 Patch caller of graph traced callee
    * Check that the reliable stacktrace implementation is able to
      discover callers of graph traced functions.

TC11 Patch function sleeping in a fault
    * Make sure that a patch to function sleeping in a fault exception
      gets blocked.

TC12 Patch caller of kretprobed callee
    * Check that the reliable stacktrace implementation is able to
      discover callers of functions with a kretprobe on them.

TC13 Patch traced function
    * Patch a function which is being traced and check that the live
      patch really is in effect.

TC14 Trace patched function
    * Trace a patched function and check that the live patch remains
      in effect.

TC15 Patch graph-traced function
    * Patch a function which is being graph-traced and check that the
      live patch really is in effect.

TC16 Graph-trace patched function
    * Graph-trace a patched function and check that the live patch
      remains in effect.

TC17 Check that patching a kprobed function fails
    * Patch a function with a kprobe on it and check that the live
      patch fails to load: kprobes' and live patching ftrace_ops both
      have FTRACE_OPS_FL_IPMODIFY set.

Supported platforms
-------------------

This test suite is supported and regularly tested on:

* SUSE Linux Enterprise 12 SP4 and newer
* SUSE Linux Enterprise 15 GA and newer
* openSUSE Tumbleweed

Following distros are supported in the sense that there is intention to allow
running qa_test_klp on them but there may be no regular testing done on these
distros. If anything is broken in this area, we welcome bug reports and
patches.

* Debian 10 and newer
* Fedora 31 and newer
* openSUSE Leap 15.1 and newer

Supported hardware architectures include **x86_64/amd64**, **ppc64le** and
**s390x**.

About

Linux Kernel Live Patching infrastructure tests

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages