]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
objtool/klp: Remove "objtool --checksum"
authorJosh Poimboeuf <jpoimboe@kernel.org>
Fri, 3 Apr 2026 20:10:29 +0000 (13:10 -0700)
committerJosh Poimboeuf <jpoimboe@kernel.org>
Tue, 5 May 2026 04:16:05 +0000 (21:16 -0700)
The checksum functionality has been moved to "objtool klp checksum"
which is now used by klp-build.  Remove the now-dead --checksum and
--debug-checksum options from the default objtool command.

Acked-by: Song Liu <song@kernel.org>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
scripts/livepatch/klp-build
tools/objtool/builtin-check.c
tools/objtool/check.c

index 6103345cd2a9aa8ab56fa31c4114535a417f52e0..c1475c003298a8985e2ff7c8f33db4b426c795b8 100755 (executable)
@@ -275,6 +275,9 @@ validate_config() {
                [[ "$CONFIG_AS_VERSION" -lt 200000 ]] &&        \
                die "Clang assembler version < 20 not supported"
 
+       [[ -x "$OBJTOOL" ]] && "$OBJTOOL" klp 2>&1 | command grep -q "not implemented" && \
+               die "objtool not built with KLP support; install xxhash-devel/libxxhash-dev (version >= 0.8) and recompile"
+
        return 0
 }
 
index b780df5137152ef3fd3aa152fe45faaf9a85aa3f..ec7f10a5ef19a899eb12872222b97d2a3c05300e 100644 (file)
@@ -73,7 +73,6 @@ static int parse_hacks(const struct option *opt, const char *str, int unset)
 
 static const struct option check_options[] = {
        OPT_GROUP("Actions:"),
-       OPT_BOOLEAN(0,           "checksum", &opts.checksum, "generate per-function checksums"),
        OPT_BOOLEAN(0,           "cfi", &opts.cfi, "annotate kernel control flow integrity (kCFI) function preambles"),
        OPT_STRING_OPTARG('d',   "disas", &opts.disas, "function-pattern", "disassemble functions", "*"),
        OPT_CALLBACK_OPTARG('h', "hacks", NULL, NULL, "jump_label,noinstr,skylake", "patch toolchain bugs/limitations", parse_hacks),
@@ -95,7 +94,6 @@ static const struct option check_options[] = {
        OPT_GROUP("Options:"),
        OPT_BOOLEAN(0,           "backtrace", &opts.backtrace, "unwind on error"),
        OPT_BOOLEAN(0,           "backup", &opts.backup, "create backup (.orig) file on warning/error"),
-       OPT_STRING(0,            "debug-checksum", &opts.debug_checksum,  "funcs", "enable checksum debug output"),
        OPT_BOOLEAN(0,           "dry-run", &opts.dryrun, "don't write modifications"),
        OPT_BOOLEAN(0,           "link", &opts.link, "object is a linked object"),
        OPT_BOOLEAN(0,           "module", &opts.module, "object is part of a kernel module"),
@@ -165,20 +163,7 @@ static bool opts_valid(void)
                return false;
        }
 
-#ifndef BUILD_KLP
-       if (opts.checksum) {
-               ERROR("--checksum not supported; install xxhash-devel/libxxhash-dev (version >= 0.8) and recompile");
-               return false;
-       }
-#endif
-
-       if (opts.debug_checksum && !opts.checksum) {
-               ERROR("--debug-checksum requires --checksum");
-               return false;
-       }
-
-       if (opts.checksum               ||
-           opts.disas                  ||
+       if (opts.disas                  ||
            opts.hack_jump_label        ||
            opts.hack_noinstr           ||
            opts.ibt                    ||
index 3e5d335d0e299cfe01454bab1dc86ed13f15e029..ae047be919c54e462e144c641287b9f3e7df76c4 100644 (file)
@@ -18,7 +18,6 @@
 #include <objtool/special.h>
 #include <objtool/trace.h>
 #include <objtool/warn.h>
-#include <objtool/checksum.h>
 #include <objtool/util.h>
 
 #include <linux/objtool_types.h>
@@ -4946,15 +4945,6 @@ int check(struct objtool_file *file)
        if (opts.noabs)
                warnings += check_abs_references(file);
 
-       if (opts.checksum) {
-               ret = calculate_checksums(file);
-               if (ret)
-                       goto out;
-               ret = create_sym_checksum_section(file);
-               if (ret)
-                       goto out;
-       }
-
        if (opts.orc && nr_insns) {
                ret = orc_create(file);
                if (ret)