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

From: Michael Matz
Date: Wed Sep 14 2022 - 10:28:55 EST


Hello,

On Wed, 14 Sep 2022, Peter Zijlstra wrote:

> > Maybe this is semantics, but I wouldn't characterize objtool's existence
> > as being based on the mistrust of tools. It's main motivation is to
> > fill in the toolchain's blind spots in asm and inline-asm, which exist
> > by design.
>
> That and a fairly deep seated loathing for the regular CFI annotations
> and DWARF in general. Linus was fairly firm he didn't want anything to
> do with DWARF for in-kernel unwinding.

I was referring only to the check-stuff functionality of objtool, not to
its other parts. Altough, of course, "deep seated loathing" is a special
form of mistrust as well ;-)

> That left us in a spot that we needed unwind information in a 'better'
> format than DWARF.
>
> Objtool was born out of those contraints. ORC not needing the CFI
> annotations and ORC being *much* faster at unwiding and generation
> (debug builds are slow) were all good.

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
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.


Ciao,
Michael.