XXH3 is only supported starting with xxhash 0.8.  Enforce that.

Fixes: 0d83da43b1e1 ("objtool/klp: Add --checksum option to generate 
per-function checksums")
Reported-by: Michael Kelley <[email protected]>
Closes: 
https://lore.kernel.org/sn6pr02mb41579b83cd295c9fee40eed6d4...@sn6pr02mb4157.namprd02.prod.outlook.com
Signed-off-by: Josh Poimboeuf <[email protected]>
---
 tools/objtool/Makefile        | 2 +-
 tools/objtool/builtin-check.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile
index 48928c9bebef..021f55b7bd87 100644
--- a/tools/objtool/Makefile
+++ b/tools/objtool/Makefile
@@ -12,7 +12,7 @@ ifeq ($(SRCARCH),loongarch)
 endif
 
 ifeq ($(ARCH_HAS_KLP),y)
-       HAVE_XXHASH = $(shell echo "int main() {}" | \
+       HAVE_XXHASH = $(shell printf "$(pound)include <xxhash.h>\nXXH3_state_t 
*state;int main() {}" | \
                      $(HOSTCC) -xc - -o /dev/null -lxxhash 2> /dev/null && 
echo y || echo n)
        ifeq ($(HAVE_XXHASH),y)
                BUILD_KLP        := y
diff --git a/tools/objtool/builtin-check.c b/tools/objtool/builtin-check.c
index 1e1ea8396eb3..aab7fa9c7e00 100644
--- a/tools/objtool/builtin-check.c
+++ b/tools/objtool/builtin-check.c
@@ -164,7 +164,7 @@ static bool opts_valid(void)
 
 #ifndef BUILD_KLP
        if (opts.checksum) {
-               ERROR("--checksum not supported; install 
xxhash-devel/libxxhash-dev and recompile");
+               ERROR("--checksum not supported; install 
xxhash-devel/libxxhash-dev (version >= 0.8) and recompile");
                return false;
        }
 #endif
-- 
2.51.1


Reply via email to