lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7b7b4197-6ac4-4c4c-b7da-4376f5b17b12@oracle.com>
Date: Fri, 21 Nov 2025 14:51:57 +0100
From: Alexandre Chartre <alexandre.chartre@...cle.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: alexandre.chartre@...cle.com, linux-kernel@...r.kernel.org,
        mingo@...nel.org, jpoimboe@...nel.org, david.laight.linux@...il.com
Subject: Re: [PATCH v6 00/30] objtool: Function validation tracing


On 11/21/25 14:16, Alexandre Chartre wrote:
> 
> On 11/21/25 11:36, Peter Zijlstra wrote:
>> On Fri, Nov 21, 2025 at 10:53:10AM +0100, Alexandre Chartre wrote:
>>> Alexandre Chartre (30):
>>>    objtool: Move disassembly functions to a separated file
>>>    objtool: Create disassembly context
>>>    objtool: Disassemble code with libopcodes instead of running objdump
>>>    tool build: Remove annoying newline in build output
>>>    objtool: Print symbol during disassembly
>>>    objtool: Store instruction disassembly result
>>>    objtool: Disassemble instruction on warning or backtrace
>>>    objtool: Extract code to validate instruction from the validate branch
>>>      loop
>>>    objtool: Record symbol name max length
>>>    objtool: Add option to trace function validation
>>>    objtool: Trace instruction state changes during function validation
>>>    objtool: Improve register reporting during function validation
>>>    objtool: Identify the different types of alternatives
>>>    objtool: Add functions to better name alternatives
>>>    objtool: Improve tracing of alternative instructions
>>>    objtool: Do not validate IBT for .return_sites and .call_sites
>>>    objtool: Add the --disas=<function-pattern> action
>>>    objtool: Preserve alternatives order
>>>    objtool: Print headers for alternatives
>>>    objtool: Disassemble group alternatives
>>>    objtool: Print addresses with alternative instructions
>>>    objtool: Disassemble exception table alternatives
>>>    objtool: Disassemble jump table alternatives
>>>    objtool: Fix address references in alternatives
>>>    objtool: Provide access to feature and flags of group alternatives
>>>    objtool: Function to get the name of a CPU feature
>>>    objtool: Improve naming of group alternatives
>>>    objtool: Compact output for alternatives with one instruction
>>>    objtool: Add wide output for disassembly
>>>    objtool: Trim trailing NOPs in alternative
>>
>> I've pushed out these patches to queue/objtool/core, however when
>> building defconfig I get this:
>>
>>    CC      /mnt/hirez/usr/src/linux-2.6/defconfig-build/tools/objtool/librbtree.o
>> arch/x86/special.c:10:10: fatal error: lib/cpu-feature-names.c: No such file or directory
>>     10 | #include "lib/cpu-feature-names.c"
>>        |          ^~~~~~~~~~~~~~~~~~~~~~~~~
>> compilation terminated.
>>

See fix below. This should be fold into patch 26 ("objtool: Function to get the name of a CPU feature").
I can resend this patch or the entire patchset if you want.

alex.

----

diff --git a/tools/objtool/arch/x86/Build b/tools/objtool/arch/x86/Build
index 1067355361b56..b95448ee01ee4 100644
--- a/tools/objtool/arch/x86/Build
+++ b/tools/objtool/arch/x86/Build
@@ -11,6 +11,8 @@ $(OUTPUT)arch/x86/lib/inat-tables.c: $(inat_tables_script) $(inat_tables_maps)
  
  $(OUTPUT)arch/x86/decode.o: $(OUTPUT)arch/x86/lib/inat-tables.c
  
+CFLAGS_decode.o += -I$(OUTPUT)arch/x86/lib
+
  cpu_features = ../arch/x86/include/asm/cpufeatures.h
  cpu_features_script = ../arch/x86/tools/gen-cpu-feature-names-x86.awk
  
@@ -19,4 +21,4 @@ $(OUTPUT)arch/x86/lib/cpu-feature-names.c: $(cpu_features_script) $(cpu_features
  
  $(OUTPUT)arch/x86/special.o: $(OUTPUT)arch/x86/lib/cpu-feature-names.c
  
-CFLAGS_decode.o += -I$(OUTPUT)arch/x86/lib
+CFLAGS_special.o := -I$(OUTPUT)arch/x86/lib
diff --git a/tools/objtool/arch/x86/special.c b/tools/objtool/arch/x86/special.c
index b6b40c56da896..e817a3fff4491 100644
--- a/tools/objtool/arch/x86/special.c
+++ b/tools/objtool/arch/x86/special.c
@@ -7,7 +7,7 @@
  #include <asm/cpufeatures.h>
  
  /* cpu feature name array generated from cpufeatures.h */
-#include "lib/cpu-feature-names.c"
+#include "cpu-feature-names.c"
  
  void arch_handle_alternative(struct special_alt *alt)
  {



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ