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. > 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 Thanks for the quick reply! Nathan > -- > Thanks, > Sasha