Re: Backport of commit a75bb4eb9e565b9f5115e2e8c07377ce32cbe69a

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.

> > 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.



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux