]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
livepatch/klp-build: Introduce klp-build script for generating livepatch modules
authorJosh Poimboeuf <jpoimboe@kernel.org>
Wed, 17 Sep 2025 16:04:08 +0000 (09:04 -0700)
committerJosh Poimboeuf <jpoimboe@kernel.org>
Tue, 14 Oct 2025 21:50:19 +0000 (14:50 -0700)
commit24ebfcd65a871df4555b98c49c9ed9a92f146113
treedb2c828221173c17c38c5ddc37c107a9bb7d5465
parent59adee07b568fb78e2bf07df1f22f3fe45b7240a
livepatch/klp-build: Introduce klp-build script for generating livepatch modules

Add a klp-build script which automates the generation of a livepatch
module from a source .patch file by performing the following steps:

  - Builds an original kernel with -function-sections and
    -fdata-sections, plus objtool function checksumming.

  - Applies the .patch file and rebuilds the kernel using the same
    options.

  - Runs 'objtool klp diff' to detect changed functions and generate
    intermediate binary diff objects.

  - Builds a kernel module which links the diff objects with some
    livepatch module init code (scripts/livepatch/init.c).

  - Finalizes the livepatch module (aka work around linker wreckage)
    using 'objtool klp post-link'.

Acked-by: Petr Mladek <pmladek@suse.com>
Tested-by: Joe Lawrence <joe.lawrence@redhat.com>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
scripts/Makefile.lib
scripts/livepatch/fix-patch-lines
scripts/livepatch/klp-build [new file with mode: 0755]
tools/objtool/klp-diff.c