On Tue, Apr 23, 2019 at 12:56:28PM -0700, Matthias Kaehlcke wrote: > On Tue, Apr 23, 2019 at 12:45:12PM -0700, Nathan Chancellor wrote: > > On Tue, Apr 23, 2019 at 03:35:12PM -0400, Sasha Levin wrote: > > > On Tue, Apr 23, 2019 at 12:04:21PM -0700, Nathan Chancellor wrote: > > > > Hi Greg and Sasha, > > > > > > > > Please apply this commit to 4.4 through 5.0 (patches are threaded in > > > > reply to this one), which will prevent Clang from emitting references > > > > to compiler runtime functions and doing some performance-killing > > > > optimization when using CONFIG_CC_OPTIMIZE_FOR_SIZE. > > > > > > > > Please let me know if I did something wrong or if there are any > > > > objections. > > > > > > This looks like a fix for a performance regression, which don't usually > > > end up in stable unless they are severe enough. > > > > > > > Yes and no. The original reason for the revert was because of the > > compiler runtime functions: > > > > https://lore.kernel.org/lkml/CAG5bF+S6OvBnsaR6UpMCqjDR9_hMo6qRMHGiW+iCaRYQW4C3YA@xxxxxxxxxxxxxx/ > > > > The Chromium guys hit this [1] and have applied the patch for their > > kernels, I think it should be applied for everyone. > > We picked it into our kernels because we needed a fix *now* to unbreak > our builds, but I agree it should be fixed at least in relevant LTS > versions. > Of course, I wasn't implying that was a bad thing :) it's further justification for this being a stable worthy patch as it fixes a real world issue and could fix more. > > > This patch looks simple enough, and seeing peterz on it suggests to me > > > that this was significant enough for someone to notice. Is this really > > > the case, or is this just one of those %0.01 performance regression > > > things? > > > > > > > I don't know of anyone else who has hit this but Qualcomm enabled > > CONFIG_CC_OPTIMIZE_FOR_SIZE in their 4.9 kernels with clang [2] so it > > would be nice to have this to avoid any further issues down the road. > > > > [1]: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/8bb957d781e2350515c7cffd7e7dc0dfc1777f3b > > [2]: https://source.codeaurora.org/quic/la/kernel/msm-4.9/commit/?id=e828e50380a34533c37eff98345847fd74667ddd > > I suspect the Qualcomm tree would hit the VDSO issue if they use a > sufficiently recent version of clang. > > Thanks Nathan for posting this to -stable, I should have cc-ed them in > the first place. Sure thing, thanks for the reply and input! Nathan