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