Re: objtool warning breaks build for fs/dlm/lock.o

From: Josh Poimboeuf
Date: Fri May 08 2020 - 12:20:57 EST


On Fri, May 08, 2020 at 11:45:18AM +0200, Peter Zijlstra wrote:
> On Thu, May 07, 2020 at 06:29:41PM -0500, Josh Poimboeuf wrote:
> > On Wed, May 06, 2020 at 04:07:25PM +0200, Arnd Bergmann wrote:
> > > Hi,
> > >
> > > During randconfig testing with clang-10 I came across a number
> > > of additional objtool warnings, I'll send another mail about those
> > > when I have collected more information and some object files.
> > >
> > > This one sticks out however, as objtool returns an error code that
> > > stops the build:
> >
> > > fs/dlm/lock.o: warning: objtool: __receive_convert_reply()+0x1e5: can't find jump dest instruction at .text+0xcaa7
> >
> > Thanks for sending the patch for this one. Objtool always gets confused
> > by new compiler versions, I really think we need to revert
> >
> > 644592d32837 ("objtool: Fail the kernel build on fatal errors")
> >
> > because objtool is never going to be reliable enough such that we can be
> > confident that failing the build is the right thing to do.
>
> So on the one hand I agree. We're forever playing catch up with the
> compilers, and as I said earlier, objtool generating an error has the
> very unfortunate effect of the actual .o file getting deleted by the
> build system, which is all sorts of annoying when you then want to
> figure out what objtool got upset about.
>
> So, yes, we probably should revert that.
>
> OTOH, if we don't break the build, people are going to continue to
> ignore objtool warnings/errors when they writes new code.

True, but they can already do that anyway since right now it only fails
on fatal warnings.

--
Josh