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: <e60c22fd-3e91-4a93-a90c-53cda227800d@oracle.com>
Date: Wed, 24 Sep 2025 11:25:35 +0200
From: Alexandre Chartre <alexandre.chartre@...cle.com>
To: Josh Poimboeuf <jpoimboe@...nel.org>
Cc: alexandre.chartre@...cle.com, linux-kernel@...r.kernel.org,
        mingo@...nel.org, peterz@...radead.org
Subject: Re: [RFC PATCH v2 00/17] objtool: Function validation tracing



On 9/24/25 00:33, Josh Poimboeuf wrote:
> On Thu, Jun 19, 2025 at 04:56:42PM +0200, Alexandre Chartre wrote:
>> Hi,
>>
>> Version v2 of this RFC addresses all comments from Josh and Peter,
>> in particular:
>>
>> - add --disas option to disassemble functions
>> - do not fail the build if libopcodes is not available. Instead objtool
>>    is then built without disassembly support. In that case, objtool prints
>>    a warning message if trying to use disassembly.
>>
>>    Example:
>>    $ ./tools/objtool/objtool --disas --link vmlinux.o
>>    vmlinux.o: warning: objtool: Rebuild with libopcodes for disassembly support
>>    
>> - remove dbuffer
>> - rename VTRACE* to TRACE*
>> - add trace.[ch] for trace-related functions and macros
> 
> Sorry for the delay... this is looking really good.  A few nits I saw
> when testing:
> 
> 1) With "make -s" I see
> 
>    Auto-detecting system features:
>    ...                                  libbfd: [ on  ]
>    ...                disassembler-init-styled: [ on  ]
> 
> but I'm thinking that should be completely silent?
> 
>
> 2) Also seeing an oddity with --trace:
> 
>    $ OBJTOOL_ARGS='--trace=shrink_node' make -s -j12 mm/vmscan.o
>    shrink_node: validation begin
>     12440:  shrink_node                                                 push   %rbp                                                -  - statecfa=rsp+16 rbp=(cfa-16) stack_size=16
>     12440:  shrink_node                                                 push   %rbp
>     12441:  shrink_node+0x1                                             mov    %rsp,%rbp                                           -  - statecfa=rbp+16
>     12441:  shrink_node+0x1                                             mov    %rsp,%rbp
> 
> For the instructions which have unwinding state changes, it's printing
> them twice.  Also the formatting looks a little off (two dashes;
> "statecfa").
> 

Thanks for all comments, I will address them and also resync the code.

alex.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ