Re: objtool warnings for kernel/trace/trace_selftest_dynamic.o

From: Andi Kleen
Date: Mon Dec 17 2018 - 15:55:38 EST


On Mon, Dec 17, 2018 at 08:29:38PM +0100, Peter Zijlstra wrote:
> On Mon, Dec 17, 2018 at 12:16:38PM -0600, Josh Poimboeuf wrote:
>
> > > Yes LTO causes the to be treated like static functions.
> > >
> > > I guess noclone is unlikely to be really needed here because these
> > > functions are unlikely to be cloned.
> > >
> > > So as a workaround it could be removed.
> > >
> > > But note we have other noclone functions in the tree (like in KVM)
> > > which actually need it.
> >
> > How about we just use the __used attribute then? It seems to have the
> > same result of preventing IPA optimizations (without the weird side
> > effect of missing frame pointers).
>
> AFAIK we don't have any in-tree LTO, so it can all go in the bin.

I have patches for 4.20, and I was actually thinking about resending
soon. It will need a few changes, but not too bad.

FWIW there's also a user base who used the out of tree patches
for some time.

>
> When/if we get the LTO trainwreck sorted -- which very much includes
> getting that memory-order-consume fixed -- we can revisit all that.

What do you mean? I'm not aware of any LTO problems with memory-order-consume?

-Andi