On Mon, 4 Jan 2016, Adhemerval Zanella wrote:
Nicolas, I am about to start a new thread about ""ld -r" on mixed IR/non-IR objects", asking current status from H.J. Lu, what is preventing upstream merge, concerns and objections.
First I would to know which the priority of this feature for your work on kernel tinification. I am asking it because based on the threads about previous tries to push this upstream I foresee it will take some time (either by review or design discussion).
It will also help us discuss the viability to add the patchset in your branch and the pro and cons of having it out-of-tree.
I currently build my own toolchain in order to have this feature. So it isn't an immediate priority to me personally. However it is a major hurdle for many people who otherwise would contribute to the advancement of LTO and tinification of the kernel who simply won't go as far as building their own toolchain. That's especially true for Linaro members who expect us to produce those builds for them.
It also looks like a chicken or egg problem. Given upstream kernel doesn't support LTO probably explains why ld -r for LTO is not in upstream binutils yet, and that in turn doesn't help LTO for the kernel moving forward.
So if the design is sane enough, having Linaro carry the patch might give the whole thing some momentum that the long upstream binutils review and release cycle on its own doesn't allow...unless this happens more quickly than we might expect.
And the risk is low for Linaro to carry the patch even if upstream people decide to redo the design entirely as usage should be transparent (there is no special command line argument involved, etc.) Maybe a complete recompile might be necessary after a toolchain upgrade, but That's what most people do after a toolchain upgrade anyway.
Nicolas