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.