mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v4 0/4] selftests/livepatch: build and run the tests outside the running kernel
@ 2026-11-10 16:10 Sasha Levin
  2026-11-10 16:10 ` [PATCH v4 1/4] selftests/livepatch: skip the tests on kernels without livepatch Sasha Levin
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Sasha Levin @ 2026-11-10 16:10 UTC (permalink / raw)
  To: Josh Poimboeuf, Miroslav Benes, Petr Mladek, Joe Lawrence
  Cc: Song Liu, Marcos Paulo de Souza, Eva Kurchatova, Yafang Shao,
	Shuah Khan, live-patching, linux-kselftest, linux-kernel

The livepatch selftests build their test modules against the running
kernel and skip every test without its devel files, so they do not
work when built for one kernel and run on another, as CI systems do.
In KernelCI, 36 of 69 kselftest builds of mainline fail to compile the
modules because the kernel lacks CONFIG_LIVEPATCH, and where the
modules do build, the installed tests skip themselves.

- Patch 1 skips the modules and tests when livepatch is not enabled.
- Patch 2 lets "make clean" remove the modules without a kernel build
  directory.
- Patch 3 builds the modules against the kernel in O= or KBUILD_OUTPUT.
- Patch 4 runs the tests with the installed modules, without the devel
  files.

Tested on x86_64 against kernels built with O= and in place, a kernel
without livepatch and the Debian headers. The modules build and clean
in every case, and the installed tests pass 8/8 in a VM without devel
files, where they were all skipped before.

Changes since v3:
- Split into four patches, rewrote the commit messages and added
  comments. (Petr)
- Moved the CONFIG_LIVEPATCH check into test_modules/Makefile, which
  drops the extra clean target (Petr), and read it from
  include/config/auto.conf.
- Patch 4 still skips when neither the modules nor KDIR are available.
  (Petr)

v3: https://lore.kernel.org/all/20261103222706.1642224-1-sashal@kernel.org/

Sasha Levin (4):
  selftests/livepatch: skip the tests on kernels without livepatch
  selftests/livepatch: clean the test modules without a kernel build
    directory
  selftests/livepatch: build the test modules against the kernel in O=
  selftests/livepatch: run the tests with prebuilt test modules

 tools/testing/selftests/livepatch/Makefile    | 26 +++++++++++++++++
 .../testing/selftests/livepatch/functions.sh  | 13 ++++++---
 .../selftests/livepatch/test_modules/Makefile | 29 ++++++++++++++-----
 3 files changed, 57 insertions(+), 11 deletions(-)


base-commit: b3dfbde62cf1981c4638939c159dfd087b7a72e9
-- 
2.53.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-11-10 16:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-10 16:10 [PATCH v4 0/4] selftests/livepatch: build and run the tests outside the running kernel Sasha Levin
2026-11-10 16:10 ` [PATCH v4 1/4] selftests/livepatch: skip the tests on kernels without livepatch Sasha Levin
2026-11-10 16:10 ` [PATCH v4 2/4] selftests/livepatch: clean the test modules without a kernel build directory Sasha Levin
2026-11-10 16:10 ` [PATCH v4 3/4] selftests/livepatch: build the test modules against the kernel in O= Sasha Levin
2026-11-10 16:10 ` [PATCH v4 4/4] selftests/livepatch: run the tests with prebuilt test modules Sasha Levin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®