Thread (41 messages) flat view 41 messages, 7 authors, 2025-10-14

Re: [PATCH v7 4/8] powerpc/smp: Introduce CONFIG_SCHED_MC to guard MC scheduling bits

From: Peter Zijlstra <peterz@infradead.org>
Date: 2025-08-26 08:07:35
Also in: linux-s390, lkml

On Tue, Aug 26, 2025 at 06:49:29AM +0200, Christophe Leroy wrote:

Le 26/08/2025 à 06:13, K Prateek Nayak a écrit :
quoted
PowerPC enables the MC scheduling domain by default on systems with
coregroup support without having a SCHED_MC config in Kconfig.

The scheduler uses CONFIG_SCHED_MC to introduce the MC domain in the
default topology (core) and to optimize the default CPU selection
routine (sched-ext).

Introduce CONFIG_SCHED_MC for powerpc and note that it should be
preferably enabled given the current default behavior. This also ensures
PowerPC is tested during future developments that come to depend on
CONFIG_SCHED_MC.

Signed-off-by: K Prateek Nayak <kprateek.nayak@amd.com>
---
  arch/powerpc/Kconfig           | 9 +++++++++
  arch/powerpc/include/asm/smp.h | 2 ++
  arch/powerpc/kernel/smp.c      | 4 ++++
  3 files changed, 15 insertions(+)
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 93402a1d9c9f..e954ab3f635f 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -971,6 +971,15 @@ config SCHED_SMT
  	  when dealing with POWER5 cpus at a cost of slightly increased
  	  overhead in some places. If unsure say N here.
+config SCHED_MC
+	bool "Multi-Core Cache (MC) scheduler support"
+	depends on PPC64 && SMP
+	default y
+	help
+	  MC scheduler support improves the CPU scheduler's decision making
+	  when dealing with POWER systems that contain multiple Last Level
+	  Cache instances on the same socket. If unsure say Y here.
+
You shouldn't duplicate CONFIG_SCHED_MC in every architecture, instead you
should define a CONFIG_ARCH_HAS_SCHED_MC in arch/Kconfig that gets selected
by architectures then have CONFIG_SCHED_MC defined in init/Kconfig or
kernel/Kconfig or so.
Let me add this first -- it is currently duplicated. Then I'll see about
merging the thing across architectures.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help