[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YyHecBM8D0i1lRu8@hirez.programming.kicks-ass.net>
Date: Wed, 14 Sep 2022 16:00:16 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Josh Poimboeuf <jpoimboe@...nel.org>
Cc: Michael Matz <matz@...e.de>, Borislav Petkov <bp@...en8.de>,
linux-toolchains@...r.kernel.org,
Indu Bhagat <indu.bhagat@...cle.com>,
Nick Desaulniers <ndesaulniers@...gle.com>,
linux-kernel@...r.kernel.org, "Jose E. Marchesi" <jemarch@....org>,
Miroslav Benes <mbenes@...e.cz>,
Mark Rutland <mark.rutland@....com>,
Will Deacon <will@...nel.org>, x86@...nel.org,
linux-arm-kernel@...ts.infradead.org,
live-patching@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
Ard Biesheuvel <ardb@...nel.org>,
Chen Zhongjin <chenzhongjin@...wei.com>,
Sathvika Vasireddy <sv@...ux.ibm.com>,
Christophe Leroy <christophe.leroy@...roup.eu>,
Mark Brown <broonie@...nel.org>
Subject: Re: [RFC] Objtool toolchain proposal:
-fannotate-{jump-table,noreturn}
On Wed, Sep 14, 2022 at 01:04:16AM +0100, Josh Poimboeuf wrote:
> > I will mention that objtool's existence is based on mistrust, of persons
> > (not correctly annotating stuff) and of tools (not correctly heeding those
> > annotations). The mistrust in persons is understandable and can be dealt
> > with by tools, but the mistrust in tools can't be fixed by making tools
> > more complicated by emitting even more information; there's no good reason
> > to assume that one piece of info can be trusted more than other pieces.
> > So, if you mistrust the tools you have already lost. That's somewhat
> > philosophical, so I won't beat that horse much more either.
>
> 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.
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.
Powered by blists - more mailing lists