From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C7D4C05027 for ; Thu, 26 Jan 2023 23:23:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232173AbjAZXXq (ORCPT ); Thu, 26 Jan 2023 18:23:46 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42162 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231586AbjAZXXo (ORCPT ); Thu, 26 Jan 2023 18:23:44 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1CED3442E4 for ; Thu, 26 Jan 2023 15:23:43 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id B793AB81ECD for ; Thu, 26 Jan 2023 23:23:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4A5E2C433D2; Thu, 26 Jan 2023 23:23:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1674775420; bh=N1m8Jm7k6bXxXpB2hy+G3Jd4L+GGheBAQtPMjZtg5WA=; h=Date:To:From:Subject:From; b=bvg+TCUBgPYxqHOyMQ7yk1YALfwXe6XJ77P7bo0B8TfYgp1JXG+chQghEPLcX5TEX AMpEhqhk3w9zY7BVDbnECEfn1Kt24sdZYhouwoq9kXrq6YqrTbF9xjjHoweUjTJiNI 0/M1CBPrYtD+yfpNKh+4OSBUxB0sIUtOV2ENKSAU= Date: Thu, 26 Jan 2023 15:23:39 -0800 To: mm-commits@vger.kernel.org, willy@infradead.org, vschneid@redhat.com, vincent.guittot@linaro.org, vbabka@suse.cz, tj@kernel.org, shakeelb@google.com, rostedt@goodmis.org, roman.gushchin@linux.dev, rientjes@google.com, peterz@infradead.org, penberg@kernel.org, muchun.song@linux.dev, mingo@redhat.com, mgorman@techsingularity.net, juri.lelli@redhat.com, iamjoonsoo.kim@lge.com, hannes@cmpxchg.org, dietmar.eggemann@arm.com, dennis@kernel.org, cl@linux.com, bsegall@google.com, bristot@redhat.com, 42.hyeyoo@gmail.com, akpm@linux-foundation.org From: Andrew Morton Subject: + lib-kconfigdebug-do-not-enable-debug_preempt-by-default.patch added to mm-nonmm-unstable branch Message-Id: <20230126232340.4A5E2C433D2@smtp.kernel.org> Precedence: bulk Reply-To: linux-kernel@vger.kernel.org List-ID: X-Mailing-List: mm-commits@vger.kernel.org The patch titled Subject: lib/Kconfig.debug: do not enable DEBUG_PREEMPT by default has been added to the -mm mm-nonmm-unstable branch. Its filename is lib-kconfigdebug-do-not-enable-debug_preempt-by-default.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/lib-kconfigdebug-do-not-enable-debug_preempt-by-default.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Hyeonggon Yoo <42.hyeyoo@gmail.com> Subject: lib/Kconfig.debug: do not enable DEBUG_PREEMPT by default Date: Sat, 21 Jan 2023 12:39:42 +0900 In workloads where this_cpu operations are frequently performed, enabling DEBUG_PREEMPT may result in significant increase in runtime overhead due to frequent invocation of __this_cpu_preempt_check() function. This can be demonstrated through benchmarks such as hackbench where this configuration results in a 10% reduction in performance, primarily due to the added overhead within memcg charging path. Therefore, do not to enable DEBUG_PREEMPT by default and make users aware of its potential impact on performance in some workloads. hackbench-process-sockets debug_preempt no_debug_preempt Amean 1 0.4743 ( 0.00%) 0.4295 * 9.45%* Amean 4 1.4191 ( 0.00%) 1.2650 * 10.86%* Amean 7 2.2677 ( 0.00%) 2.0094 * 11.39%* Amean 12 3.6821 ( 0.00%) 3.2115 * 12.78%* Amean 21 6.6752 ( 0.00%) 5.7956 * 13.18%* Amean 30 9.6646 ( 0.00%) 8.5197 * 11.85%* Amean 48 15.3363 ( 0.00%) 13.5559 * 11.61%* Amean 79 24.8603 ( 0.00%) 22.0597 * 11.27%* Amean 96 30.1240 ( 0.00%) 26.8073 * 11.01%* Link: https://lkml.kernel.org/r/20230121033942.350387-1-42.hyeyoo@gmail.com Signed-off-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> Acked-by: Roman Gushchin Cc: Ben Segall Cc: Christoph Lameter Cc: Daniel Bristot de Oliveira Cc: David Rientjes Cc: Dennis Zhou Cc: Dietmar Eggemann Cc: Ingo Molnar Cc: Johannes Weiner Cc: Joonsoo Kim Cc: Juri Lelli Cc: Matthew Wilcox Cc: Mel Gorman Cc: Muchun Song Cc: Pekka Enberg Cc: Peter Zijlstra Cc: Shakeel Butt Cc: Steven Rostedt (Google) Cc: Tejun Heo Cc: Valentin Schneider Cc: Vincent Guittot Cc: Vlastimil Babka Signed-off-by: Andrew Morton --- lib/Kconfig.debug | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) --- a/lib/Kconfig.debug~lib-kconfigdebug-do-not-enable-debug_preempt-by-default +++ a/lib/Kconfig.debug @@ -1176,13 +1176,16 @@ config DEBUG_TIMEKEEPING config DEBUG_PREEMPT bool "Debug preemptible kernel" depends on DEBUG_KERNEL && PREEMPTION && TRACE_IRQFLAGS_SUPPORT - default y help If you say Y here then the kernel will use a debug variant of the commonly used smp_processor_id() function and will print warnings if kernel code uses it in a preemption-unsafe way. Also, the kernel will detect preemption count underflows. + This option has potential to introduce high runtime overhead, + depending on workload as it triggers debugging routines for each + this_cpu operation. It should only be used for debugging purposes. + menu "Lock Debugging (spinlocks, mutexes, etc...)" config LOCK_DEBUGGING_SUPPORT _ Patches currently in -mm which might be from 42.hyeyoo@gmail.com are mm-page_owner-record-single-timestamp-value-for-high-order-allocations.patch lib-kconfigdebug-do-not-enable-debug_preempt-by-default.patch