On Fri, Oct 20, 2023 at 11:46:36AM +0900, Hyeonggon Yoo wrote:
On Fri, Oct 20, 2023 at 10:27 AM Luiz Capitulino luizcap@amazon.com wrote:
Hi,
As reported before[1], we found another regression in 6.1 when doing performance comparisons with 5.10. This one is caused by CONFIG_DEBUG_PREEMPT being enabled by default by the following upstream commit if you have the right config dependencies enabled (commit is introduced in v5.16-rc1):
""" commit c597bfddc9e9e8a63817252b67c3ca0e544ace26 Author: Frederic Weisbecker frederic@kernel.org Date: Tue Sep 14 12:31:34 2021 +0200
sched: Provide Kconfig support for default dynamic preempt mode """
We found up to 8% performance improvement with CONFIG_DEBUG_PREEMPT disabled in different perf benchmarks (including UnixBench process creation and redis). The root cause is explained in the commit log below which is merged in 6.3 and applies (almost) clealy on 6.1.59.
Oh, I should've sent it to the stable. Thanks for sending it!
Yes, DEBUG_PREEMPT was unintentionally enabled after the introduction of PREEMPT_DYNAMIC. It was already enabled by default for PREEMPTION=y kernels but PREEMPT_DYNAMIC always enables PREEMPT_BUILD (and hence PREEMPTION) so distros that were using PREEMPT_VOLUNTARY are silently affected by that.
It looks appropriate to be backported to the stable tree (to me). Hmm but I think it should be backported to 5.15 too?
Now queued up, thanks.
greg k-h