Thread (20 messages) 20 messages, 8 authors, 2022-09-21

Re: [RFC] Objtool toolchain proposal: -fannotate-{jump-table,noreturn}

From: Segher Boessenkool <hidden>
Date: 2022-09-14 17:48:01
Also in: linux-toolchains, linuxppc-dev, live-patching, lkml

On Wed, Sep 14, 2022 at 04:55:27PM +0200, Peter Zijlstra wrote:
On Wed, Sep 14, 2022 at 02:28:26PM +0000, Michael Matz wrote:
quoted
Don't mix DWARF debug info with DWARF-based unwinding info, the latter 
doesn't imply the former.  Out of interest: how does ORC get around the 
need for CFI annotations (or equivalents to restore registers) and what 
Objtool 'interprets' the stackops. So it follows the call-graph and is
an interpreter for all instructions that modify the stack. Doing that it
konws what the stackframe is at 'most' places.
To get correct backtraces on e.g. PowerPC you need to emulate many of
the integer insns.  That is why GCC enables -fasynchronous-unwind-tables
by default for us.

The same is true for s390, aarch64, and x86 (unless 32-bit w/ frame
pointer).

The problem is that you do not know how to access anything on the stack,
whether in the current frame or in a previous frame, from a random point
in the program.  GDB has many heuristics for this, and it still does not
get it right in all cases.
quoted
makes it fast?  I want faster unwinding for DWARF as well, when there's 
feature parity :-)  Maybe something can be learned for integration into 
dwarf-unwind.
I think we have some details here:

 https://www.kernel.org/doc/html/latest/x86/orc-unwinder.html
It is faster because it does a whole lot less.  Is that still enough?
It's not clear (to me) what exact information it wants to provide :-(


Segher

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help