From nobody Fri Oct 3 20:25:52 2025 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on2069.outbound.protection.outlook.com [40.107.96.69]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E64AD1F4191; Tue, 26 Aug 2025 04:14:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.96.69 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181685; cv=fail; b=YNC7gSkx3t8d08cv4bs8nitbh1uTsh37HME9GVe5YHLBYOEaCJkoqF0bvnYRGuhHE6N2YiGBLIq5cwIYYZ2oh4f2MVXz+eqabF2JU54BPWnU/TQHQbriMckgzj3wV07YjgMGB3kGoD4Wn01hSdvw8KseDwWeSgayP1k63yf5hfg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181685; c=relaxed/simple; bh=XP8+M/d3rPt8yIpZepI4e/Tpkw7ghkiCIaEqel9mwgM=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=S003865XgSDl8gftQsGbMdsWaOeW9aDrOj9yVdvjNCI/Axepolv7GBqPcllcIpWNbzFU2ghsfcvU5IE5tNCBK3JvTw8GmWNBF6GKz5fZzNxavHrHwhVorLbx1yymbVPN2MAUPxht2gBiklpCPjKkAkE0ZQVu/NNSUtAbiarGaqI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=EpXg6T+y; arc=fail smtp.client-ip=40.107.96.69 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="EpXg6T+y" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=b1akbWaBMDm+f3Df7wxTkjTaKyv7Vp2AELArHIoJ7SOAPg2bJKq+5GuMc27jBlagSaVwdJvdtCYj1HGXdUAEOhaSQUFDoDLZZSLsQer3axsTStPlgL9l1X00CfTDO6iJuFrlZcLqZkMREZw2Iv8kqZr22tb6FBjWKo6mz3ZEtl+vlAayN0OvMxGoERoaJhmhOyxCPB803mewEIb32SbTZO3HYATjUFwWb1BeDh9WHQvJS1crPJxwFgVvFh+ZTeQF12hb111adB2s7WKPzkSCBBW7BIEix892j29wUtpYPIg+d2tEXt4/AMj81OwtNmgJO+dRT47I+A7rTUexdj+Wcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wXS8hBE21YSUyENkKZmF6OaDotX7yQR55AvFTIUEvOY=; b=brp9mKQ5Jxl/fxfeSIUku/7Z8jP4WTsC1O8JuUW0d3Jx/s1IZu+9GdCiuZqS6jl5QLgVCy7CewShCerzIsFVd1CGZrGaDY0UytvwbkIi2lH+4WsbFFgRlNuX2ktZ+YDY7uJ1rvNLIDxkEjBMWFFchNlIwEjM2JNJtMQ2xVn0SiKAUF5GCZEIH7M1MwQSRjPn0WCx0GGG36SI0T/9GE2pWDnxgMYI1zR3Ddn9xEARTYbgmiT1gZzQt/7JfNOFIQP3cVgDCG4NmTpJm7/yUsqLVpA8Mc8eYC5Yho1Y5ARdg/4qnUycUveT6yjfkpp0IEi/aB7ZuR2F/w1sXnQEcMzihA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wXS8hBE21YSUyENkKZmF6OaDotX7yQR55AvFTIUEvOY=; b=EpXg6T+ysN0Ncg8KtaydeE288R1uvHOKUR6lXvZztJuRI+IhIsS5vTIBC6jAHvgWWCGNeAa/9nu2W44T0Q2rTlvGkdB9eba0FbB/Mv6dLbpD85h1FzK0OaHVGshBoWZMExx7EOa9ot2gWKIU9z59voj2VKDS1xChjX94fd66Yi4= Received: from DM6PR07CA0120.namprd07.prod.outlook.com (2603:10b6:5:330::10) by DS0PR12MB8198.namprd12.prod.outlook.com (2603:10b6:8:f2::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.21; Tue, 26 Aug 2025 04:14:35 +0000 Received: from DS1PEPF0001708E.namprd03.prod.outlook.com (2603:10b6:5:330:cafe::28) by DM6PR07CA0120.outlook.office365.com (2603:10b6:5:330::10) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.20 via Frontend Transport; Tue, 26 Aug 2025 04:14:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF0001708E.mail.protection.outlook.com (10.167.17.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:14:35 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:14:18 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 1/8] sched/fair: Get rid of sched_domains_curr_level hack for tl->cpumask() Date: Tue, 26 Aug 2025 04:13:12 +0000 Message-ID: <20250826041319.1284-2-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF0001708E:EE_|DS0PR12MB8198:EE_ X-MS-Office365-Filtering-Correlation-Id: b72068d9-00d1-45f7-766e-08dde45710e6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|7416014|36860700013|1800799024|13003099007|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?IQu69FlEnjRyGp1FXz6UdNT2brBwSFeKUdn7Y/YXjgCLVamKan86h8rrsqGJ?= =?us-ascii?Q?Rt3ATwUmBcKrtvxhoOfxSULsmhqKYXZtalLKKvQYQdAfpdVnOB6kPLDWY44P?= =?us-ascii?Q?3Qky7q+bHqkV07eKglEzNF85oM6g7H4AkN/dyhPahhFCOHElPrkmRvo2z06m?= =?us-ascii?Q?2WcafHoTEBro8Nx1RNgQFOrTMTqLn6k6wn5c+Hu1jP9nNPUCXOPAmiKqT0Wn?= =?us-ascii?Q?ShQids+TZF52p3MLsg9vooWya72ZoYsqSEJPm+zuL23/LLmnQcTP9GIWSa4S?= =?us-ascii?Q?LYlS6i7NBlojj8qJK/3h54oiJhtF52OjggNf7wKpjV4cnel0EcMqtLH00mbB?= =?us-ascii?Q?WAw96Mz8mWtJPzTz4sFbYgzNVxfcs0fYf0D75HUreDwMJ/BH2JxFiaJt5PqG?= =?us-ascii?Q?xX6p12gUkelbrw0OayPReQfEtz0/zEy0bKNhuoVGL4/Bx1MytnBKc1LSLcF1?= =?us-ascii?Q?e3tWfNWALXwG5fFD3aIkWFjlW93UF4hqSAYnRJVGsJWX/zx+I1g58IhqnHrM?= =?us-ascii?Q?qXJuEn2jjnNfDdttPhrcxfSTKd9xdSk+UC3FNXbsKu1vXqUxYkEpeJfF4Qys?= =?us-ascii?Q?4ZQWzksrh6RKz2odGUsT08RnCGDD6p91QbpwOznhoW6czmX6rMgduNTf5DDH?= =?us-ascii?Q?1xT6oKlXvhMMHKcgU06dg7M88fI5thzEw5HLeoBHZ+TTHSFrlvDRopoXBBw8?= =?us-ascii?Q?wO33zQhis4hAKBmYX3Hjl4wElJ970pRTlpb7Jore3gTCZZW8qCwMNLrH1Nmg?= =?us-ascii?Q?jZ2xf81aobNLr7o8e7tNFt8nCoYm2TF6Xzkm9GGo8KCLq0TBfkKxeRj7k06+?= =?us-ascii?Q?IiY+CxFOdZ0nSoF//j+Dw98q00rlk/kXuHBfQOnD6uxV+ltA0M3qA5OqqPMv?= =?us-ascii?Q?XrKy5lJZtuiivLrYP6rZEU4XU7VIrchGXJ2Ee9scD5KUDdSKzV4sTzsVFw4A?= =?us-ascii?Q?yEACTsGur8Pil1tS/ad5FyJU+cWtj+7bqzjya2es7LXBvvukg/qlWlHKa4n/?= =?us-ascii?Q?d7Vb/ZM1Y8IpriTLlzfBf40T+4x3/AhO17/YKDn11CYgNf2PNsXqZanUODVZ?= =?us-ascii?Q?6YzjfZkh7CVaoxh0Cd2bFnkllFqWct+O4iVdisXyLhmBZvm9YCkkFUgyEvYM?= =?us-ascii?Q?sdrP42yol1BdzPZNnAVdjkWPoqku5kznq4rKOWFxBM/eS99YAtqRlXOUlqoT?= =?us-ascii?Q?v+FY6Sdq7Cq8jcd71W1R+zBsrZWfWJ8tzueHiDTYxFm9hvb8KwqvimD3X/OC?= =?us-ascii?Q?HaKRtOBno/u9xEtPFLInyv1Z+qQsH+ZnsmutYRyd7k5Z/ZN2qfpL2X3YKTxy?= =?us-ascii?Q?THpE1S9MDkGlEAWqXExVVmcu/X1XABinkd7jM/h1tU1pqAlMuh6GUNQAivWt?= =?us-ascii?Q?J/CqWWZ2VqxWbRR6M/EhW1aQD3hW1rpi14sa1M10Uhz9snjv/y6aUJzfWI59?= =?us-ascii?Q?9Bl7VUWrmmxs0SIkrtt437owkGNFHLkTEJgCS1Leht1AZkyl5/AGZCnfQhrf?= =?us-ascii?Q?h2CDV2ZDVCxffadw85ORTJN+OV1vIQvuc2yZdHsMTYY9vSi6R+6G875KleWV?= =?us-ascii?Q?gl62j5D69T3QTxcECy8=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(376014)(7416014)(36860700013)(1800799024)(13003099007)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:14:35.2491 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b72068d9-00d1-45f7-766e-08dde45710e6 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF0001708E.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8198 Content-Type: text/plain; charset="utf-8" From: Peter Zijlstra Leon [1] and Vinicius [2] noted a topology_span_sane() warning during their testing starting from v6.16-rc1. Debug that followed pointed to the tl->mask() for the NODE domain being incorrectly resolved to that of the highest NUMA domain. tl->mask() for NODE is set to the sd_numa_mask() which depends on the global "sched_domains_curr_level" hack. "sched_domains_curr_level" is set to the "tl->numa_level" during tl traversal in build_sched_domains() calling sd_init() but was not reset before topology_span_sane(). Since "tl->numa_level" still reflected the old value from build_sched_domains(), topology_span_sane() for the NODE domain trips when the span of the last NUMA domain overlaps. Instead of replicating the "sched_domains_curr_level" hack, get rid of it entirely and instead, pass the entire "sched_domain_topology_level" object to tl->cpumask() function to prevent such mishap in the future. sd_numa_mask() now directly references "tl->numa_level" instead of relying on the global "sched_domains_curr_level" hack to index into sched_domains_numa_masks[]. The original warning was reproducible on the following NUMA topology reported by Leon: $ sudo numactl -H available: 5 nodes (0-4) node 0 cpus: 0 1 node 0 size: 2927 MB node 0 free: 1603 MB node 1 cpus: 2 3 node 1 size: 3023 MB node 1 free: 3008 MB node 2 cpus: 4 5 node 2 size: 3023 MB node 2 free: 3007 MB node 3 cpus: 6 7 node 3 size: 3023 MB node 3 free: 3002 MB node 4 cpus: 8 9 node 4 size: 3022 MB node 4 free: 2718 MB node distances: node 0 1 2 3 4 0: 10 39 38 37 36 1: 39 10 38 37 36 2: 38 38 10 37 36 3: 37 37 37 10 36 4: 36 36 36 36 10 The above topology can be mimicked using the following QEMU cmd that was used to reproduce the warning and test the fix: sudo qemu-system-x86_64 -enable-kvm -cpu host \ -m 20G -smp cpus=3D10,sockets=3D10 -machine q35 \ -object memory-backend-ram,size=3D4G,id=3Dm0 \ -object memory-backend-ram,size=3D4G,id=3Dm1 \ -object memory-backend-ram,size=3D4G,id=3Dm2 \ -object memory-backend-ram,size=3D4G,id=3Dm3 \ -object memory-backend-ram,size=3D4G,id=3Dm4 \ -numa node,cpus=3D0-1,memdev=3Dm0,nodeid=3D0 \ -numa node,cpus=3D2-3,memdev=3Dm1,nodeid=3D1 \ -numa node,cpus=3D4-5,memdev=3Dm2,nodeid=3D2 \ -numa node,cpus=3D6-7,memdev=3Dm3,nodeid=3D3 \ -numa node,cpus=3D8-9,memdev=3Dm4,nodeid=3D4 \ -numa dist,src=3D0,dst=3D1,val=3D39 \ -numa dist,src=3D0,dst=3D2,val=3D38 \ -numa dist,src=3D0,dst=3D3,val=3D37 \ -numa dist,src=3D0,dst=3D4,val=3D36 \ -numa dist,src=3D1,dst=3D0,val=3D39 \ -numa dist,src=3D1,dst=3D2,val=3D38 \ -numa dist,src=3D1,dst=3D3,val=3D37 \ -numa dist,src=3D1,dst=3D4,val=3D36 \ -numa dist,src=3D2,dst=3D0,val=3D38 \ -numa dist,src=3D2,dst=3D1,val=3D38 \ -numa dist,src=3D2,dst=3D3,val=3D37 \ -numa dist,src=3D2,dst=3D4,val=3D36 \ -numa dist,src=3D3,dst=3D0,val=3D37 \ -numa dist,src=3D3,dst=3D1,val=3D37 \ -numa dist,src=3D3,dst=3D2,val=3D37 \ -numa dist,src=3D3,dst=3D4,val=3D36 \ -numa dist,src=3D4,dst=3D0,val=3D36 \ -numa dist,src=3D4,dst=3D1,val=3D36 \ -numa dist,src=3D4,dst=3D2,val=3D36 \ -numa dist,src=3D4,dst=3D3,val=3D36 \ ... [ prateek: Fixed build issues on s390 and ppc, put everything behind the respective CONFIG_SCHED_* ] Reported-by: Leon Romanovsky Closes: https://lore.kernel.org/lkml/20250610110701.GA256154@unreal/ [1] Fixes: ccf74128d66c ("sched/topology: Assert non-NUMA topology masks don't = (partially) overlap") # ce29a7da84cd, f55dac1dafb3 Link: https://lore.kernel.org/lkml/a3de98387abad28592e6ab591f3ff6107fe01dc1= .1755893468.git.tim.c.chen@linux.intel.com/ [2] Signed-off-by: Peter Zijlstra (Intel) Signed-off-by: K Prateek Nayak Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/kernel/smp.c | 26 +++++++++++----- arch/s390/kernel/topology.c | 20 +++++++++---- arch/x86/kernel/smpboot.c | 30 ++++++++++++++++--- include/linux/sched/topology.h | 4 ++- include/linux/topology.h | 2 +- kernel/sched/topology.c | 54 ++++++++++++++++++++++------------ 6 files changed, 99 insertions(+), 37 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index f59e4b9cc207..862f50c09539 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1028,16 +1028,21 @@ static int powerpc_shared_proc_flags(void) * We can't just pass cpu_l2_cache_mask() directly because * returns a non-const pointer and the compiler barfs on that. */ -static const struct cpumask *shared_cache_mask(int cpu) +static const struct cpumask *shared_cache_mask(struct sched_domain_topolog= y_level *tl, int cpu) { return per_cpu(cpu_l2_cache_map, cpu); } =20 #ifdef CONFIG_SCHED_SMT -static const struct cpumask *smallcore_smt_mask(int cpu) +static const struct cpumask *smallcore_smt_mask(struct sched_domain_topolo= gy_level *tl, int cpu) { return cpu_smallcore_mask(cpu); } + +static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_smt_mask(cpu); +} #endif =20 static struct cpumask *cpu_coregroup_mask(int cpu) @@ -1054,11 +1059,16 @@ static bool has_coregroup_support(void) return coregroup_enabled; } =20 -static const struct cpumask *cpu_mc_mask(int cpu) +static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) { return cpu_coregroup_mask(cpu); } =20 +static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) +{ + return cpu_node_mask(cpu); +} + static int __init init_big_cores(void) { int cpu; @@ -1448,7 +1458,7 @@ static bool update_mask_by_l2(int cpu, cpumask_var_t = *mask) return false; } =20 - cpumask_and(*mask, cpu_online_mask, cpu_cpu_mask(cpu)); + cpumask_and(*mask, cpu_online_mask, cpu_node_mask(cpu)); =20 /* Update l2-cache mask with all the CPUs that are part of submask */ or_cpumasks_related(cpu, cpu, submask_fn, cpu_l2_cache_mask); @@ -1538,7 +1548,7 @@ static void update_coregroup_mask(int cpu, cpumask_va= r_t *mask) return; } =20 - cpumask_and(*mask, cpu_online_mask, cpu_cpu_mask(cpu)); + cpumask_and(*mask, cpu_online_mask, cpu_node_mask(cpu)); =20 /* Update coregroup mask with all the CPUs that are part of submask */ or_cpumasks_related(cpu, cpu, submask_fn, cpu_coregroup_mask); @@ -1601,7 +1611,7 @@ static void add_cpu_to_masks(int cpu) =20 /* If chip_id is -1; limit the cpu_core_mask to within PKG */ if (chip_id =3D=3D -1) - cpumask_and(mask, mask, cpu_cpu_mask(cpu)); + cpumask_and(mask, mask, cpu_node_mask(cpu)); =20 for_each_cpu(i, mask) { if (chip_id =3D=3D cpu_to_chip_id(i)) { @@ -1703,7 +1713,7 @@ static void __init build_sched_topology(void) powerpc_topology[i++] =3D SDTL_INIT(smallcore_smt_mask, powerpc_smt_flags, SMT); } else { - powerpc_topology[i++] =3D SDTL_INIT(cpu_smt_mask, powerpc_smt_flags, SMT= ); + powerpc_topology[i++] =3D SDTL_INIT(tl_smt_mask, powerpc_smt_flags, SMT); } #endif if (shared_caches) { @@ -1716,7 +1726,7 @@ static void __init build_sched_topology(void) SDTL_INIT(cpu_mc_mask, powerpc_shared_proc_flags, MC); } =20 - powerpc_topology[i++] =3D SDTL_INIT(cpu_cpu_mask, powerpc_shared_proc_fla= gs, PKG); + powerpc_topology[i++] =3D SDTL_INIT(cpu_pkg_mask, powerpc_shared_proc_fla= gs, PKG); =20 /* There must be one trailing NULL entry left. */ BUG_ON(i >=3D ARRAY_SIZE(powerpc_topology) - 1); diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index 46569b8e47dd..5129e3ffa7f5 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -509,7 +509,7 @@ int topology_cpu_init(struct cpu *cpu) return rc; } =20 -static const struct cpumask *cpu_thread_mask(int cpu) +static const struct cpumask *cpu_thread_mask(struct sched_domain_topology_= level *tl, int cpu) { return &cpu_topology[cpu].thread_mask; } @@ -520,22 +520,32 @@ const struct cpumask *cpu_coregroup_mask(int cpu) return &cpu_topology[cpu].core_mask; } =20 -static const struct cpumask *cpu_book_mask(int cpu) +static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return &cpu_topology[cpu].core_mask; +} + +static const struct cpumask *cpu_book_mask(struct sched_domain_topology_le= vel *tl, int cpu) { return &cpu_topology[cpu].book_mask; } =20 -static const struct cpumask *cpu_drawer_mask(int cpu) +static const struct cpumask *cpu_drawer_mask(struct sched_domain_topology_= level *tl, int cpu) { return &cpu_topology[cpu].drawer_mask; } =20 +static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) +{ + return cpu_node_mask(cpu); +} + static struct sched_domain_topology_level s390_topology[] =3D { SDTL_INIT(cpu_thread_mask, cpu_smt_flags, SMT), - SDTL_INIT(cpu_coregroup_mask, cpu_core_flags, MC), + SDTL_INIT(cpu_mc_mask, cpu_core_flags, MC), SDTL_INIT(cpu_book_mask, NULL, BOOK), SDTL_INIT(cpu_drawer_mask, NULL, DRAWER), - SDTL_INIT(cpu_cpu_mask, NULL, PKG), + SDTL_INIT(cpu_pkg_mask, NULL, PKG), { NULL, }, }; =20 diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 33e166f6ab12..4cd3d69741cf 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -463,14 +463,36 @@ static int x86_core_flags(void) { return cpu_core_flags() | x86_sched_itmt_flags(); } + +static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_smt_mask(cpu); +} #endif + #ifdef CONFIG_SCHED_CLUSTER static int x86_cluster_flags(void) { return cpu_cluster_flags() | x86_sched_itmt_flags(); } +static const struct cpumask *tl_cls_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_clustergroup_mask(cpu); +} +#endif + +#ifdef CONFIG_SCHED_MC +static const struct cpumask *tl_mc_mask(struct sched_domain_topology_level= *tl, int cpu) +{ + return cpu_coregroup_mask(cpu); +} #endif =20 +static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_node_mask(cpu); +} + /* * Set if a package/die has multiple NUMA nodes inside. * AMD Magny-Cours, Intel Cluster-on-Die, and Intel @@ -479,14 +501,14 @@ static int x86_cluster_flags(void) static bool x86_has_numa_in_package; =20 static struct sched_domain_topology_level x86_topology[] =3D { - SDTL_INIT(cpu_smt_mask, cpu_smt_flags, SMT), + SDTL_INIT(tl_smt_mask, cpu_smt_flags, SMT), #ifdef CONFIG_SCHED_CLUSTER - SDTL_INIT(cpu_clustergroup_mask, x86_cluster_flags, CLS), + SDTL_INIT(tl_cls_mask, x86_cluster_flags, CLS), #endif #ifdef CONFIG_SCHED_MC - SDTL_INIT(cpu_coregroup_mask, x86_core_flags, MC), + SDTL_INIT(tl_mc_mask, x86_core_flags, MC), #endif - SDTL_INIT(cpu_cpu_mask, x86_sched_itmt_flags, PKG), + SDTL_INIT(tl_pkg_mask, x86_sched_itmt_flags, PKG), { NULL }, }; =20 diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index 5263746b63e8..602508130c8a 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -30,6 +30,8 @@ struct sd_flag_debug { }; extern const struct sd_flag_debug sd_flag_debug[]; =20 +struct sched_domain_topology_level; + #ifdef CONFIG_SCHED_SMT static inline int cpu_smt_flags(void) { @@ -172,7 +174,7 @@ bool cpus_equal_capacity(int this_cpu, int that_cpu); bool cpus_share_cache(int this_cpu, int that_cpu); bool cpus_share_resources(int this_cpu, int that_cpu); =20 -typedef const struct cpumask *(*sched_domain_mask_f)(int cpu); +typedef const struct cpumask *(*sched_domain_mask_f)(struct sched_domain_t= opology_level *tl, int cpu); typedef int (*sched_domain_flags_f)(void); =20 struct sd_data { diff --git a/include/linux/topology.h b/include/linux/topology.h index 33b7fda97d39..6575af39fd10 100644 --- a/include/linux/topology.h +++ b/include/linux/topology.h @@ -260,7 +260,7 @@ static inline bool topology_is_primary_thread(unsigned = int cpu) =20 #endif =20 -static inline const struct cpumask *cpu_cpu_mask(int cpu) +static inline const struct cpumask *cpu_node_mask(int cpu) { return cpumask_of_node(cpu_to_node(cpu)); } diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 977e133bb8a4..dfc754e0668c 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1591,7 +1591,6 @@ static void claim_allocations(int cpu, struct sched_d= omain *sd) enum numa_topology_type sched_numa_topology_type; =20 static int sched_domains_numa_levels; -static int sched_domains_curr_level; =20 int sched_max_numa_distance; static int *sched_domains_numa_distance; @@ -1632,14 +1631,7 @@ sd_init(struct sched_domain_topology_level *tl, int sd_id, sd_weight, sd_flags =3D 0; struct cpumask *sd_span; =20 -#ifdef CONFIG_NUMA - /* - * Ugly hack to pass state to sd_numa_mask()... - */ - sched_domains_curr_level =3D tl->numa_level; -#endif - - sd_weight =3D cpumask_weight(tl->mask(cpu)); + sd_weight =3D cpumask_weight(tl->mask(tl, cpu)); =20 if (tl->sd_flags) sd_flags =3D (*tl->sd_flags)(); @@ -1677,7 +1669,7 @@ sd_init(struct sched_domain_topology_level *tl, }; =20 sd_span =3D sched_domain_span(sd); - cpumask_and(sd_span, cpu_map, tl->mask(cpu)); + cpumask_and(sd_span, cpu_map, tl->mask(tl, cpu)); sd_id =3D cpumask_first(sd_span); =20 sd->flags |=3D asym_cpu_capacity_classify(sd_span, cpu_map); @@ -1732,22 +1724,48 @@ sd_init(struct sched_domain_topology_level *tl, return sd; } =20 +#ifdef CONFIG_SCHED_SMT +static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_smt_mask(cpu); +} +#endif + +#ifdef CONFIG_SCHED_CLUSTER +static const struct cpumask *tl_cls_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_clustergroup_mask(cpu); +} +#endif + +#ifdef CONFIG_SCHED_MC +static const struct cpumask *tl_mc_mask(struct sched_domain_topology_level= *tl, int cpu) +{ + return cpu_coregroup_mask(cpu); +} +#endif + +static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) +{ + return cpu_node_mask(cpu); +} + /* * Topology list, bottom-up. */ static struct sched_domain_topology_level default_topology[] =3D { #ifdef CONFIG_SCHED_SMT - SDTL_INIT(cpu_smt_mask, cpu_smt_flags, SMT), + SDTL_INIT(tl_smt_mask, cpu_smt_flags, SMT), #endif =20 #ifdef CONFIG_SCHED_CLUSTER - SDTL_INIT(cpu_clustergroup_mask, cpu_cluster_flags, CLS), + SDTL_INIT(tl_cls_mask, cpu_cluster_flags, CLS), #endif =20 #ifdef CONFIG_SCHED_MC - SDTL_INIT(cpu_coregroup_mask, cpu_core_flags, MC), + SDTL_INIT(tl_mc_mask, cpu_core_flags, MC), #endif - SDTL_INIT(cpu_cpu_mask, NULL, PKG), + SDTL_INIT(tl_pkg_mask, NULL, PKG), { NULL, }, }; =20 @@ -1769,9 +1787,9 @@ void __init set_sched_topology(struct sched_domain_to= pology_level *tl) =20 #ifdef CONFIG_NUMA =20 -static const struct cpumask *sd_numa_mask(int cpu) +static const struct cpumask *sd_numa_mask(struct sched_domain_topology_lev= el *tl, int cpu) { - return sched_domains_numa_masks[sched_domains_curr_level][cpu_to_node(cpu= )]; + return sched_domains_numa_masks[tl->numa_level][cpu_to_node(cpu)]; } =20 static void sched_numa_warn(const char *str) @@ -2411,7 +2429,7 @@ static bool topology_span_sane(const struct cpumask *= cpu_map) * breaks the linking done for an earlier span. */ for_each_cpu(cpu, cpu_map) { - const struct cpumask *tl_cpu_mask =3D tl->mask(cpu); + const struct cpumask *tl_cpu_mask =3D tl->mask(tl, cpu); int id; =20 /* lowest bit set in this mask is used as a unique id */ @@ -2419,7 +2437,7 @@ static bool topology_span_sane(const struct cpumask *= cpu_map) =20 if (cpumask_test_cpu(id, id_seen)) { /* First CPU has already been seen, ensure identical spans */ - if (!cpumask_equal(tl->mask(id), tl_cpu_mask)) + if (!cpumask_equal(tl->mask(tl, id), tl_cpu_mask)) return false; } else { /* First CPU hasn't been seen before, ensure it's a completely new spa= n */ --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2057.outbound.protection.outlook.com [40.107.101.57]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0393C23D7EE; Tue, 26 Aug 2025 04:15:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.101.57 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181713; cv=fail; b=qm+ln4Qnc7vFfbJPoRKirrhFJqRG4kJwY5tQXMH5UfnAgB4nB4MXcKqVTJmVLKqTBv9IwCnbyUjdsxTgWryTazTFPlHMDZTbkYBWLcMpdeolOlAspzGj9peWE9oQ+csMQLPBsSRfm5oCw3kFHWI9YZoSHyArN7MwYEbEbcaJ4l0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181713; c=relaxed/simple; bh=QzOwBtXUGgs3sox4qTNdCSujFdaj8LytVd0H71LW8gY=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=TIYWX7+s3xizTdX9Qg1h8yJYwzE1JW3U/pobroWvyPjwytpq472JsDAmvotSq/9b0kaUI960czeUiaY5PnaA4sPQ4Dw3Z6RQPtounrVdw9D7s3IkeEt+tTTDjwNjw95F7/TBiOwtUPI+Hv32xqpitWpxvjo+R96/4zEIruQ1szw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=FsBrP4Ym; arc=fail smtp.client-ip=40.107.101.57 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="FsBrP4Ym" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=AeMCsfL1bInl0h17+ylppjRpS8OUodiEQlkijwePRPSMCjilaVWPHxIm16PAulasztX+QoTWgOdnyc6eTMFAsFR3G/anWxhRhMdS8TcxxYIvWybqU6X110ENFFP/J2iMw94PtpSTLTXncYfyfC3REqADt3skhKor81uacBOn0iiHd22i1iUKASwdFVm0hH88IRDa/OKKOmd0QMKryCJoOgNQxJySjFCvU8irf/Q/uI9ew6k+33eePsO9LZGwAdsRMhDGlJbrHw2kJS3ifv/W96crVvXbi+autH+upr7js1B6AaQcmFIR7h8vNN3vh+O7h5FfRmR7glst4l5qI4GgXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=5IH8oGZxcIwSCBKee6k1Y2kPyqcMYvW/bGsTY8BkelE=; b=vZGW5JsfV0qebQ7y/6HVXuzVIyEFI7/wYktUWBwBEYEvH14JneIZE1WUfDGCdJfV+FQ9iagbvoWynsu1F0y9OMHIhI3H3BQFcFjq3LSvEfz0gUNSSKZH3cQm8qjzXA8dlg2QLaAEEysbFX42Zmfcl4VvAD8HwP4+y70BG9PA7qeozRnBOB4qXiYPOSSUqO1lz6L66BOlWUTqMoHO7uzpFwm6IFvypzewMxrD4S3h6wsjwQcTsfD4vVOvD1pBC9/9MwBbOz6DXiM9OS5KFKPZxtJF2QuAHfqtS5ztopooVANXUhjOL80ln/GEADjVV1gqyKqCOcS7J3wefobAnoXlRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5IH8oGZxcIwSCBKee6k1Y2kPyqcMYvW/bGsTY8BkelE=; b=FsBrP4YmMdOesK0EsMIra9EliKwIcXnPl9ncHedIk4Z/mMBQ3Iw+9QTphPaoYVMHAcXm8YvLIkGkiD7lM0yzGKERFsjRWnZB/IfarWU9+4rWKvZR5MUfU56M2WecB1mdePSiioIJ5HtM6orjaoCT4BOh25yfPziIV951Xc3EwGk= Received: from DM6PR13CA0001.namprd13.prod.outlook.com (2603:10b6:5:bc::14) by LV9PR12MB9784.namprd12.prod.outlook.com (2603:10b6:408:2ed::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.21; Tue, 26 Aug 2025 04:15:08 +0000 Received: from DS1PEPF00017090.namprd03.prod.outlook.com (2603:10b6:5:bc:cafe::5f) by DM6PR13CA0001.outlook.office365.com (2603:10b6:5:bc::14) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:15:08 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF00017090.mail.protection.outlook.com (10.167.17.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:15:08 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:14:48 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 2/8] powerpc/smp: Rename cpu_corgroup_* to cpu_corgrp_* Date: Tue, 26 Aug 2025 04:13:13 +0000 Message-ID: <20250826041319.1284-3-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF00017090:EE_|LV9PR12MB9784:EE_ X-MS-Office365-Filtering-Correlation-Id: 5d68b88a-b09d-40f6-259a-08dde45724af X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|82310400026|1800799024|36860700013|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?AklONSsRI+h4av95ZYJokvgt7L7NYpmEcgZNKzIzhVZT+7A2fFonLJdpop2Z?= =?us-ascii?Q?DWSQlVPEdBYVaNU8mCjxQ8fkz1DXtSTAKHQB74+0+OpzmSsQ2YhCK5LD7fcV?= =?us-ascii?Q?nAueuzjeatgJXe9ze4yT7YWJjKinAjxQ62alTFBWCOZtnveWZaub/x+KZzuZ?= =?us-ascii?Q?hgxm2k13n9VlTNa00CUA9G8yKQo/QF10+iYSWT5ifgk0L3ZSIR+lb+SG9NT9?= =?us-ascii?Q?wVukEW6TkSZK9rlbvfSZjB7pUX7Q6chZ0iUeDG9djx6WzG2evHjv/e5LD8SU?= =?us-ascii?Q?Pw9I9DddUPb3bI6Y731JkvLwoConcbvFA4MRPwqwdU3IQaHHKu84ls8g2+A9?= =?us-ascii?Q?0slbTqEABXVzyRb8HeHSnAFl5GVUA/J18KWXb2Rh3bQ9tllqIHX9JuIPZDI+?= =?us-ascii?Q?zi8uJbNSiBNj3qIdwLF+bfOzRc8Q1ypgp4v674nw8uXTUhpXPguSTYasfItq?= =?us-ascii?Q?YvyXOgRcl7QleEnl2n0IpBurq7ZCsop6DSW7ftUmmFr8OHY7ZSCvOe10GRNf?= =?us-ascii?Q?DJPUGHpEe95L9TQevjN1iUJphlylOPULYzBGM0fnJcGhcU0OB6GOOCgrvpeN?= =?us-ascii?Q?WlazMkSY2IN/UMSmXGsrm8guzW6hLLoCtzcWoskfwfD5jJqHXzfW+AnGyZTa?= =?us-ascii?Q?QDpXFkqekApM/7skcoQdTy253PhGGT0AMrMUQoqYyFUDBXXSTnWrjNFNll54?= =?us-ascii?Q?3BfDWaR4IvM482QYwqvddCyRdXJ/eU3KMRuObBBnEXGNUUAqxHvb03gEXlYr?= =?us-ascii?Q?Mp1shq8TMLCzUaPL30+ivxToACS2/TG4f9jYDCNwhl1Hw5J1rGdlxS9b6EbY?= =?us-ascii?Q?9ibkciAIVSmgfN2S7G6E2c5fQmLbgaoAeGxrf+eleGObvwd01/Ud3PJkBgHl?= =?us-ascii?Q?MBQsM4DAoQXFNDx1s2hVSTNt5+/Wo/Wf+ZRta+NULTVO6RSdHLFpObWnR9qt?= =?us-ascii?Q?0BoAYaTzAMNxtqEccvqsVRmEwjFuiPIES2HwY4mQ4gGLaQSyLFtta6ul7A7R?= =?us-ascii?Q?kfY4MkQ1C2x6Xo3AzvQUbo743Ud6Ej3FcM22zRJmWK5fDLDW3WY6FJc4hNQM?= =?us-ascii?Q?zoBLbnpjQu7VyLXrae5bYUIQc0VxmeNItWqgp1G56Gp5iOxGYsQN0pkctDxA?= =?us-ascii?Q?fPQS1C9vjGPW6TrJPS3t1Csnc81XxoroSyOkHBgb1rUkjnvbkceuM5gvXLMs?= =?us-ascii?Q?P56zDXOWs+jLFgciS6S4HmiovcL+ZNxlcH5yUcOVjJP4HwowAmC7GUv2UCn3?= =?us-ascii?Q?7vNBeWFM7uyyb3oH1fwGwv4iNuaUAGYdIAFg6i27qMTREU3Ieyzz3ZT1mg3q?= =?us-ascii?Q?xZGaVKTNB6s2p74zP+81di0JMiSS4KvgJ4ZsBqmvWKizSB+BrTZdpqHxarwt?= =?us-ascii?Q?N2TZvT7JsADQg9XWxD/8XNolM51HFj6CKAXQadvfJk5HDIeoSvPDM8/Ovgh5?= =?us-ascii?Q?dtp/kTulDJqp8CcEzLHtevSuTRc/s1YcNIdslJRAb9xEOiLTRLKa/kxipm0R?= =?us-ascii?Q?sqKlUpYTIb7SKWrJdES+bCFxGm4he86gVCxKj4JeCOAl/iBnHpTak1i25Q?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(7416014)(82310400026)(1800799024)(36860700013)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:15:08.4416 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5d68b88a-b09d-40f6-259a-08dde45724af X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF00017090.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV9PR12MB9784 Content-Type: text/plain; charset="utf-8" Rename cpu_corgroup_{map,mask} to cpu_corgrp_{map,mask} to free up the cpu_corgroup_* namespace. cpu_corgroup_mask() will be added back in the subsequent commit for CONFIG_SCHED_MC enablement. No functional changes intended. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/kernel/smp.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index 862f50c09539..4f48262658cc 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -87,7 +87,7 @@ DEFINE_PER_CPU(cpumask_var_t, cpu_sibling_map); DEFINE_PER_CPU(cpumask_var_t, cpu_smallcore_map); DEFINE_PER_CPU(cpumask_var_t, cpu_l2_cache_map); DEFINE_PER_CPU(cpumask_var_t, cpu_core_map); -static DEFINE_PER_CPU(cpumask_var_t, cpu_coregroup_map); +static DEFINE_PER_CPU(cpumask_var_t, cpu_corgrp_map); =20 EXPORT_PER_CPU_SYMBOL(cpu_sibling_map); EXPORT_PER_CPU_SYMBOL(cpu_l2_cache_map); @@ -1045,9 +1045,9 @@ static const struct cpumask *tl_smt_mask(struct sched= _domain_topology_level *tl, } #endif =20 -static struct cpumask *cpu_coregroup_mask(int cpu) +static struct cpumask *cpu_corgrp_mask(int cpu) { - return per_cpu(cpu_coregroup_map, cpu); + return per_cpu(cpu_corgrp_map, cpu); } =20 static bool has_coregroup_support(void) @@ -1061,7 +1061,7 @@ static bool has_coregroup_support(void) =20 static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) { - return cpu_coregroup_mask(cpu); + return cpu_corgrp_mask(cpu); } =20 static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) @@ -1124,7 +1124,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) zalloc_cpumask_var_node(&per_cpu(cpu_core_map, cpu), GFP_KERNEL, cpu_to_node(cpu)); if (has_coregroup_support()) - zalloc_cpumask_var_node(&per_cpu(cpu_coregroup_map, cpu), + zalloc_cpumask_var_node(&per_cpu(cpu_corgrp_map, cpu), GFP_KERNEL, cpu_to_node(cpu)); =20 #ifdef CONFIG_NUMA @@ -1145,7 +1145,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) cpumask_set_cpu(boot_cpuid, cpu_core_mask(boot_cpuid)); =20 if (has_coregroup_support()) - cpumask_set_cpu(boot_cpuid, cpu_coregroup_mask(boot_cpuid)); + cpumask_set_cpu(boot_cpuid, cpu_corgrp_mask(boot_cpuid)); =20 init_big_cores(); if (has_big_cores) { @@ -1510,8 +1510,8 @@ static void remove_cpu_from_masks(int cpu) set_cpus_unrelated(cpu, i, cpu_core_mask); =20 if (has_coregroup_support()) { - for_each_cpu(i, cpu_coregroup_mask(cpu)) - set_cpus_unrelated(cpu, i, cpu_coregroup_mask); + for_each_cpu(i, cpu_corgrp_mask(cpu)) + set_cpus_unrelated(cpu, i, cpu_corgrp_mask); } } #endif @@ -1543,7 +1543,7 @@ static void update_coregroup_mask(int cpu, cpumask_va= r_t *mask) if (!*mask) { /* Assume only siblings are part of this CPU's coregroup */ for_each_cpu(i, submask_fn(cpu)) - set_cpus_related(cpu, i, cpu_coregroup_mask); + set_cpus_related(cpu, i, cpu_corgrp_mask); =20 return; } @@ -1551,18 +1551,18 @@ static void update_coregroup_mask(int cpu, cpumask_= var_t *mask) cpumask_and(*mask, cpu_online_mask, cpu_node_mask(cpu)); =20 /* Update coregroup mask with all the CPUs that are part of submask */ - or_cpumasks_related(cpu, cpu, submask_fn, cpu_coregroup_mask); + or_cpumasks_related(cpu, cpu, submask_fn, cpu_corgrp_mask); =20 /* Skip all CPUs already part of coregroup mask */ - cpumask_andnot(*mask, *mask, cpu_coregroup_mask(cpu)); + cpumask_andnot(*mask, *mask, cpu_corgrp_mask(cpu)); =20 for_each_cpu(i, *mask) { /* Skip all CPUs not part of this coregroup */ if (coregroup_id =3D=3D cpu_to_coregroup_id(i)) { - or_cpumasks_related(cpu, i, submask_fn, cpu_coregroup_mask); + or_cpumasks_related(cpu, i, submask_fn, cpu_corgrp_mask); cpumask_andnot(*mask, *mask, submask_fn(i)); } else { - cpumask_andnot(*mask, *mask, cpu_coregroup_mask(i)); + cpumask_andnot(*mask, *mask, cpu_corgrp_mask(i)); } } } --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2062.outbound.protection.outlook.com [40.107.94.62]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8CDA02206BB; Tue, 26 Aug 2025 04:15:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.94.62 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181747; cv=fail; b=D9eyd6X90aJoZ6XXzpUWnQaAGjg95aBSeQr8PeoImG+AwOwHpCGLX0ATjIWKf2W3uPVcZPxeolRjuLy9lafGfc9hB8i72wPlK+QG2M6qcLEp6uYY5B3mvg0xxz3Oq2kVEJ/NJVJ5FZu+2NYnZyufIJVYjyiZ1n6/CUP1VH6iEGs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181747; c=relaxed/simple; bh=JYTRzPa2zEBLJlEOBbdVwkyg0/xN6NjEc6CV72xLp2s=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=hVws6ABc5Rm03n+wHUtUbnVb1L4mONAvWFRRutrBJkTHa0YcADjhj91X39fJlEcaUxeYV5IT0+1bZZCm2wzAEU+ma9+sOi3hwgbetLMoVdAWy6c4RGe2kInmbrQ/13zcVKjK8gTnJvtjaXeaLRjQoJM9Vdl022ctN+PPKg1kS/I= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=ymaYkxzT; arc=fail smtp.client-ip=40.107.94.62 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="ymaYkxzT" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dUlyzD4beCwKqcejTmZbg5ASPO+B3c/FT0p+5vfRsuHjtWXgMgBL7QOFExY0JlFg6QM56ihu85lU6JrnjGRTKmaaRKXkVgxFaSnlqf91Vd/1gl969l5gXCERaKO4eb6s+oB8mm+9Zs1PEfV50njZYoUUFhRqJzGCjzyzsurEHAuaiSuQoL1stfESLV7+3lL0YPkUTjvHB0auQTHh92YNylDGab+wud2oMiAn7VxQh/rc5J6BJIQYiD3ENhNtIr8d8317y92ke/Z7N0u6uFwakuhQcpNM1XTKNAhPpM/CX4pZq7iP4n3jPPI7lonZOZfLhe/WQJa3yY+IQ74u/9uWFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yKsg+I86CkxHRgBiU3ymHIp4C5yWlm0APnpkISRln5k=; b=ejSMCxmaqwTW0uhRnnrSlmq4CF8n6GVnrSzqhlatNZG06ysrMsyjs/PaXYcKQuuNNsSXFUuzaKUXj4vG6eJyX0qEiDD6KtO+kU+5kmkczfOZtDEsV5VYcvmmLB6QxQnhfPW9fmm2JT/PfuMAkfVYNesbAgFETTTTF0lNcvZtW6evrAsDcR87zWomOpNN5grgtklcA5p/V1QDr6jo+swoZK3kQ/itPZEXda4E30UAz01EKMipR3a+sFxOrRC2RK+EBNjBkkkqQ5q6DvQ69SgvqcfWhBVEkb0BSpUu2FpJKabX4XEHyDJKtNfdy1I2E0bX0nZYn2CEtt+1JIp38HBmxQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yKsg+I86CkxHRgBiU3ymHIp4C5yWlm0APnpkISRln5k=; b=ymaYkxzToImOnXL/2xdwFTUX22NZ8hgyMAeDYk7AsWiPL9FAeVFtQWMYFLrfWvzXFbc4upaKdvSB0cHoSiyp0HL87paIzDb1Dou9M8xcAIbwKX0nlz7E+EaaorIUiatHA6FBcDn3iD9ZLykOPakdISYGy0PR783BfyVrrVGDbJ8= Received: from DM6PR06CA0092.namprd06.prod.outlook.com (2603:10b6:5:336::25) by SJ5PPFCB5E1B8F5.namprd12.prod.outlook.com (2603:10b6:a0f:fc02::9a1) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.16; Tue, 26 Aug 2025 04:15:36 +0000 Received: from DS1PEPF0001708F.namprd03.prod.outlook.com (2603:10b6:5:336:cafe::40) by DM6PR06CA0092.outlook.office365.com (2603:10b6:5:336::25) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.20 via Frontend Transport; Tue, 26 Aug 2025 04:15:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF0001708F.mail.protection.outlook.com (10.167.17.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:15:36 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:15:21 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 3/8] powerpc/smp: Export cpu_coregroup_mask() Date: Tue, 26 Aug 2025 04:13:14 +0000 Message-ID: <20250826041319.1284-4-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF0001708F:EE_|SJ5PPFCB5E1B8F5:EE_ X-MS-Office365-Filtering-Correlation-Id: afc2ab7b-ef99-484b-2daf-08dde457354d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|7416014|376014|36860700013|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?3QPguovntAajLH1ZgokUJmbOYVNMvQ2thwwI7RxowU29FKx2Od3PMDdLprHi?= =?us-ascii?Q?Z0ru8Y0Og0njg0fXLaHBzcW6bdpUPBWlRmo/DAOf51zMowVgna8ExId/UL1I?= =?us-ascii?Q?O5GHzD/a9h5Y3xtKEH5fKIjxuQR1KSuytKwQLsKh5pCHnqQeoKAtBJ5lkJ6w?= =?us-ascii?Q?T8Vokc7vgXl5wgZXHsCC3WgqZALpwMrSUdFlHErT50A/znxbHN3sh+xk8jfD?= =?us-ascii?Q?AbAWDGzbd0DCr8YfEwIp91y8kSS1IfDkQX7N10sQetubu4Wa0ExQgRpSQD2U?= =?us-ascii?Q?wjTbtQLlq5DSJoNl8uur9c/ayCtgmjG249A+sHe3zo9ZFo9coAZ8xobOyp2P?= =?us-ascii?Q?FkXYiQlb7X7DUfpu+q+9/4umqOlNn/32APUJnfbIqFrzVkX9IC1Zjim4XhTx?= =?us-ascii?Q?QfDq+PBH9ydduR9j4Ml5T05LvSYeX84hPHUoc3HbbQHtnGTEZVO3F7AG+OHi?= =?us-ascii?Q?Nhx8wpblHEjKI7V3mvTTa3mi77ZjaG8RZfpmbbdk2EPmyQG5EnSdQjhhhago?= =?us-ascii?Q?xKHEw0rSvdGEQcegWwf4U5XWM4MOYckXpYKECa9veh9Lz74LrSuqQH0Nfm+j?= =?us-ascii?Q?v44TUl7T3vDWvRDBiY+o0OVVXsp+iIA6EtzRsl2q3DrbkoO9JUWDfywDP/8P?= =?us-ascii?Q?n/zD1ZjbCQ3QMwGFiowASYM0zlBJfoG33TR/QlVmuSSlFKw/pLRLCP0RMWEG?= =?us-ascii?Q?CQDNImVGsJ20qi8JxNfYgl5egV4TR/YvUgYlICXdDwHxfC4BidNaaTjMUyUG?= =?us-ascii?Q?hcbetLlW3T7lVOCQbKbrirwm805nrIKcZmto4aN2aICfYV9G68xXKj2J4O75?= =?us-ascii?Q?9aNMxc/y7FIzfRHUevAxJCInYDxjl30787/E1rHGVfY13VVSUBgaM+p1A7u+?= =?us-ascii?Q?1THMUIgQiuMjnRmKbeBDW+1vZf3GDWP5fbm/yKIqD74DPGMlL449XSETdrNA?= =?us-ascii?Q?IcH6GshoX66HE7KMIm9OJBaLNlCHh8zTG4qIhudO9Nvl41XCDDspxdAVUGqJ?= =?us-ascii?Q?kXj4z8if3WMWPj988oleMXKrG+Sy814QRO+Ci6xUwgFqfbGeqrGiqkew0k6L?= =?us-ascii?Q?0bwz3RnMbrRIC4gmJum/TELDe5d3uUUjs7o6UZ6yU6bg0kEdg0OGcwnS8HHm?= =?us-ascii?Q?jruiPvAnkRVVoIlxTe9VrH7I7xuyEeWcT2dQfZb1pcXMix0bmz9kuwkWLIld?= =?us-ascii?Q?w3oF6OZtdrXfXX5J9bI6BuuYZAOJzN5gceRNjzxYgjTMdFNVuqy1gG809qCp?= =?us-ascii?Q?ZqTGJqrC1UexK6M/RBmlNd7W5bxp2m5q2Xkp2yGK7aPrElPPSJy93QIxgnh5?= =?us-ascii?Q?pikJMqRrRr8auTAaF3bC8gC+qSQcLSxAKKWO1lnUcH8MGJPHnch9MSiP7scO?= =?us-ascii?Q?FOhFDXDMqw87U6dvQt7BqZs1WZpqURORe/BT+iFDt4nL1uY7TJo4VL6jnW57?= =?us-ascii?Q?qy0qXnLTQDLY+zeru8nhuq3CTzG0AdYyh294hvrb2JWyCQd8qg/5SdDyiAbr?= =?us-ascii?Q?IIydnKVEG9nReQzEARzFIIKCnE+rhkbZMz9K6OGqqy7sjP2r+cM7kCmA/A?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(1800799024)(7416014)(376014)(36860700013)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:15:36.3210 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: afc2ab7b-ef99-484b-2daf-08dde457354d X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF0001708F.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPFCB5E1B8F5 Content-Type: text/plain; charset="utf-8" Deine cpu_coregroup_mask() to export the per-cpu cpu_corgrp_map when coregroups are supported(). When has_coregroup_support() returns false, cpu_coregroup_mask() returns the mask used by the PKG domain. Since this will only be used after CONFIG_SCHED_MC is added for PowerPC, no functional changes are intended at this point. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/include/asm/smp.h | 2 ++ arch/powerpc/kernel/smp.c | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h index b77927ccb0ab..86de4d0dd0aa 100644 --- a/arch/powerpc/include/asm/smp.h +++ b/arch/powerpc/include/asm/smp.h @@ -148,6 +148,8 @@ static inline const struct cpumask *cpu_smt_mask(int cp= u) } #endif /* CONFIG_SCHED_SMT */ =20 +extern const struct cpumask *cpu_coregroup_mask(int cpu); + /* Since OpenPIC has only 4 IPIs, we use slightly different message number= s. * * Make sure this matches openpic_request_IPIs in open_pic.c, or what show= s up diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index 4f48262658cc..e623f2864dc4 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1059,6 +1059,14 @@ static bool has_coregroup_support(void) return coregroup_enabled; } =20 +const struct cpumask *cpu_coregroup_mask(int cpu) +{ + if (has_coregroup_support()) + return per_cpu(cpu_corgrp_map, cpu); + + return cpu_node_mask(cpu); +} + static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) { return cpu_corgrp_mask(cpu); --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2077.outbound.protection.outlook.com [40.107.223.77]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A8FA41632C8; Tue, 26 Aug 2025 04:16:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.223.77 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181773; cv=fail; b=HzWD7xNWsiTIqX1jpKEbdhORFFo2KQBGk7oeSI6oju439EhIu4YmcFd66as+YHcoP9iATGhpP4b+1Jwj1PbglU/NAf8ytIWCF/pugujTqprMiIxX0gjH/NFeZ+5xkpILD1ODdYCWbMox1s6Xlc+SR6lRfyJAxTwDGG0CdQQEQIU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181773; c=relaxed/simple; bh=9srcT4JK/5LHVVQzemWovWyGdI1JlFnfVi8uP3EJK2k=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=TF08bYqvTTSdgI0TeZmVvEF0xwlQarin9nLvPBMruTQgvkdBO4n7jUWPD8rSOifGh+PGLAzlhBTQJMLB/81SNylRDH6Ko2qAkSekdYvazFHCoea+e1jzlF+zzVTCJoXaWFtHfvT1nyTl+i7Cljc0uAnUZRKc2VpZIs1gmnlKt1A= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=SNJQUTek; arc=fail smtp.client-ip=40.107.223.77 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="SNJQUTek" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=U8JHERIGt1G3TzMVJBUGYrmq7wkEwacgamUCmhJbFOMTu0mx/tpuQe2gFKEo7MSIIdBTlWQHSe5ELKF+Y7AZ5vks6xheukryD5ZizERTCmV5U3KPhJVZA4AeKRzgr1IO+FVoYYhz0rPmq+1AG5pYqF/F+cjcQyka3tYBdywkuyURX+6Cyu18hxIHajaUjce663jwJrdBYHnLDfp1q2q45vb9XD0ZXPWgalS6XRJ6pSrwJh1LEFxhlAI5UmJe5M+59BzEt33y0qBybZlvpuUrTpU6qB4kDg9a05Q7xOPfOpC6JW1qM6f6N5TQLgPGhXmWpfFTo4mrtHZnEh7EmH/OsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=iqmJe6GT1AnaxJWE8EM6lbSaOJZzB7Nk4nj9o5z9dDU=; b=PFMDrPiGuG9oJBPJzsrEFPF/sBP7vHmLmI16UC6xHiyjwNYwuqBouJQ2yDjqEUjOtTVu4Dxe93DwxWNtuBNMNr3J0wDGEROrK7zej9fEltabtGZhoN/MOgUdhzCdkH3FVVzV4fJheNoCZ0GODN7KkPjpDRV6EYAElLTmrfsGemHG/zN2H4FkfLmRo1z/bibreY2ezBped2HhUOkyhmXlA1cWCEAvejamlqnwQTfFaOss8yMCjNg94ddKPMpOuhYr7M4ymDid+/FPtFCWwMvdAAP0cSgY3Doc1I8169B5puiEeAK2ZzOH2OWL286CHHmUSsiSCVCQ8tYrsRmEn9BPWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iqmJe6GT1AnaxJWE8EM6lbSaOJZzB7Nk4nj9o5z9dDU=; b=SNJQUTek9i/t9u5r9a3RmeHBNIzztgWRwE4WuudiBbue4tNF0dCs70hrGcvpoobmXB7VbygWGyNAuC0zmLqjn4rGTYeZQh44qxPS1dx/1TbjxYPCnl5OpzytNVfCERcwTFnB+1LpoGL5yZ2Hqxtp5FlxDydCVdhHVt8iGU+vS/0= Received: from DM6PR06CA0073.namprd06.prod.outlook.com (2603:10b6:5:336::6) by SA1PR12MB7104.namprd12.prod.outlook.com (2603:10b6:806:29e::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.24; Tue, 26 Aug 2025 04:16:06 +0000 Received: from DS1PEPF0001708F.namprd03.prod.outlook.com (2603:10b6:5:336:cafe::c4) by DM6PR06CA0073.outlook.office365.com (2603:10b6:5:336::6) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.20 via Frontend Transport; Tue, 26 Aug 2025 04:16:06 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF0001708F.mail.protection.outlook.com (10.167.17.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:16:06 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:15:49 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 4/8] powerpc/smp: Introduce CONFIG_SCHED_MC to guard MC scheduling bits Date: Tue, 26 Aug 2025 04:13:15 +0000 Message-ID: <20250826041319.1284-5-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF0001708F:EE_|SA1PR12MB7104:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d7a198c-1697-4cb4-3d34-08dde457474b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|82310400026|376014|1800799024|36860700013|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?NdtIlMHSzwOBmmhffCf61ohFaxM5LX+dKM41cwynFCsLOLvnkkuDfa//T7gA?= =?us-ascii?Q?juiyRrtCfxodoed4t1C4yJ3KeknmfD8e+9AzEeQ3BF0EzBlszW5P7WKqr+LC?= =?us-ascii?Q?J7ixdiBzeDeprsdOGVD31AwlBdnYCzNxGF8QFNVTXur2PTqVu7+6dFdTT7hR?= =?us-ascii?Q?pD8B1ab7EhgCl81XDax8Jzqx7gUHZX0B+BsMfeTVL7C+tUCkmVR4mGbjMXmw?= =?us-ascii?Q?B21q+U3Hlw8IHugx00jFes+6FiCljAfnt8RaDqKg8MhpmHWOyC4fm45b5vZb?= =?us-ascii?Q?yxOendC+z5iyrOyIf0sgPnQWYNFc6lizZUJn8uqtKqwCt31PNbRnuc1kEDlD?= =?us-ascii?Q?pa0PQu83vWmDE59F0RZQu86etGYM2EO/yXwNZH44DesGXR58e2bgJNM+QvS6?= =?us-ascii?Q?NxOtAaRbvm8fmp2zeP3Ke4SZxXe1VzpA/TWodpHXR5iQNfR2C5xzmfm6wIUS?= =?us-ascii?Q?7c6OrWDAGRLNGL9zaQhxYIX7KJELjCrjXN29O9c9qTNFTTmoftm2AZgxgI0B?= =?us-ascii?Q?um8Oo1XGmFKuXu6diH30P1o1MyH0py1XrFL8nv7sLyP7Yd4ZBGoMcPFFX3tx?= =?us-ascii?Q?tJzRKTHylDd6aPnf37mhJQ2HMrna2D85QHFzUbsmBHoow5BACgcLTXGriKhz?= =?us-ascii?Q?I5miK3M14sDCXUaELgV41JYedxatugAsgJYCqgupx82j+0LjAT8CCTk7CB2Y?= =?us-ascii?Q?SPDK1iy3hQ7Sem2jhpx2mNDk2zisGj2S3a5ojAl6N/C0kKAhYlUIxxxrrxDV?= =?us-ascii?Q?77kgczjMQK/ql/MERdkfWHK6HEKAG7oMgxY25MYax8bGduIj231qhF8KCqjY?= =?us-ascii?Q?H19Vl238btP54Qt6u20H6wBNJ0TZa4XzgyV68qLf8wwKjDg7SZJDBgV4iU80?= =?us-ascii?Q?PU1nTWdoAQSfYNFzp6krWu53lmBClApZ+eiUuBwVam/gvOcrzN99NOA+IdZl?= =?us-ascii?Q?2syk2o4dzCtZD+awNdKtRxjYsITccgP9JWXic/qtSqc8cCh3bphV5+NSQKQA?= =?us-ascii?Q?EMNgIhxM8tZ3o1nI/OnERaBMSbbs9wtgiCDX+l+6Pmrm+pQK2JeYvJ3Mf5Af?= =?us-ascii?Q?/yqSPesNsHXM/kzqj0SH8yhYxJG0pg/INJ/Ugj2zDpIQ24yeAtweSfjLUSho?= =?us-ascii?Q?AFaBvx0EC3XH7bdkixB48QJfpFKxjAvPaAubU87C8UGB8EaUX67dQBxTDoTU?= =?us-ascii?Q?zgViP45Y7amItCgmHdJdYWIywxJ+4IlKpFWt3SZZ0XdjHdw7aV9aYVr9qpUR?= =?us-ascii?Q?IgR2GWahY65ICqJZdRNyPWztRCUGUc47s7BstFAHtgBwDcKoHUul1GuCJg29?= =?us-ascii?Q?6Yulj97Hxsf7mlcEdwpdur26/0ny8WJ7VFRS3wWReTIHy2VFLSe8R7k7V4gh?= =?us-ascii?Q?4jfIACKvZBJHmNLckSHyR0iEfjZxH1HvQWm0nTDoEm5syztkDdKl+7nZUk/s?= =?us-ascii?Q?AgsL3QluXpP7S3X8UN+wFRq9BiXvvEmlZIzwT7uvnoCn8o6HEqVTy4hze4IF?= =?us-ascii?Q?fIqIoVSH+kAfch/Yl0QT25XUEL5loMwLSdII1b9pxOEZ5TMMoRKzXOJgpg?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(7416014)(82310400026)(376014)(1800799024)(36860700013)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:16:06.5080 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d7a198c-1697-4cb4-3d34-08dde457474b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF0001708F.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7104 Content-Type: text/plain; charset="utf-8" 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 Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- 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. =20 +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. + config PPC_DENORMALISATION bool "PowerPC denormalisation exception handling" depends on PPC_BOOK3S_64 diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h index 86de4d0dd0aa..9a320d96e891 100644 --- a/arch/powerpc/include/asm/smp.h +++ b/arch/powerpc/include/asm/smp.h @@ -148,7 +148,9 @@ static inline const struct cpumask *cpu_smt_mask(int cp= u) } #endif /* CONFIG_SCHED_SMT */ =20 +#ifdef CONFIG_SCHED_MC extern const struct cpumask *cpu_coregroup_mask(int cpu); +#endif =20 /* Since OpenPIC has only 4 IPIs, we use slightly different message number= s. * diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index e623f2864dc4..7f79b853b221 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1059,6 +1059,7 @@ static bool has_coregroup_support(void) return coregroup_enabled; } =20 +#ifdef CONFIG_SCHED_MC const struct cpumask *cpu_coregroup_mask(int cpu) { if (has_coregroup_support()) @@ -1071,6 +1072,7 @@ static const struct cpumask *cpu_mc_mask(struct sched= _domain_topology_level *tl, { return cpu_corgrp_mask(cpu); } +#endif =20 static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) { @@ -1729,10 +1731,12 @@ static void __init build_sched_topology(void) SDTL_INIT(shared_cache_mask, powerpc_shared_cache_flags, CACHE); } =20 +#ifdef CONFIG_SCHED_MC if (has_coregroup_support()) { powerpc_topology[i++] =3D SDTL_INIT(cpu_mc_mask, powerpc_shared_proc_flags, MC); } +#endif =20 powerpc_topology[i++] =3D SDTL_INIT(cpu_pkg_mask, powerpc_shared_proc_fla= gs, PKG); =20 --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2070.outbound.protection.outlook.com [40.107.237.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A8EDA1E4BE; Tue, 26 Aug 2025 04:16:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.237.70 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181806; cv=fail; b=FiEtWTUmytSigiumsO9XbX5ns7lTw0eNN6oVALZd9zBheAHeHfQ2zrAgaTOZ9Yz8VkoBzEe7hg2PFIlE/rZ8psNo2EBEb55C4nc5M1TzsoJ933WnRtzTdrAvEXUkfJ2VegHEDuFBpwSOsbDIRi1KB5f2TvSjY2PAUMIH0eIbb8I= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181806; c=relaxed/simple; bh=jNv6WkNDfkYA9ASiAsOOzAyJNK858rIXazVlVKif4Us=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=ukFqBpAfIrtOYx+E7wcn39Ix6fPx0UqTapCySzQw83sy+boSyv5uasBtzE0abMmdlzStahQpRazaVSJJLQnhVA6ReYOzdliRAmTaiaKPiFO+49U0vTPJxvKVMLE+nrX20NZcVXTZPrJs/hZ7YZQqgufGU/fetW/J6IyYcoBksio= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=ix2Lnlvt; arc=fail smtp.client-ip=40.107.237.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="ix2Lnlvt" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fqpA44FbwygIGYXgjKyzqlVsoGXp2LyntPf0vNxSInDMjq+7DpwnogGK0r+Fmu6UOHqUCBJS/87UhKF9Vb1zxMGX2nMzU4fhUNRSd+4pHvUNs6Ms+S+pGSt4I5tgzT6nP5XmZuAAB0LUVkBWo2E982cOmsZYwGmIcJjSnKTArcON3nnAssHULf+EbifBvJrPVrxcn1ztf4rTBK29m/N4YprEvWsJDUZ43yhVqKd0SunJwmN6YrHUjwB2SuFA+VKqnz9RkOchtGmePsSs76V9+J2lZHfSaf6Z9R2InKv0cyr95awb6D9MGzyw5T2W/TfljubAZx3sJRcqMSJ16Funxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=D/GVxErGUpcsj4DX7OrISrfati2/H37lebj90va+WHY=; b=jA29pGaEpOg5JyMp6ef9wpav/GsTLXOGX+l16/T0DtYQbGenm3PT9hTbd4SrBYbEvwQjS9jB45/w92p5adfQaGUTjYfiYdnC6O/7x9m1wWFqnO2u0n9SysFr1ldgaOrK6F+QLm0ubSMNRhl//Cs5fh6FNTAdiO8ItVU7bcLyL5LsqQvE0lLbal8acD5NFW96CgF/wLid9V1uVCG8vtV4BTzJ7tqKa0LR7t3SeFWdCK46BTYJPjyvlN8GSsnORf+EdRda/BtG5PBuP+JFJV7VM5i6kr7Jnjr2tqAIgUgqrCSfJHtpMwUp4hDuA6biiq89/+0r2H4cWMvMT9JrDSzXPg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=D/GVxErGUpcsj4DX7OrISrfati2/H37lebj90va+WHY=; b=ix2Lnlvt3manxbfBZJg6NtjzTgmrZY6iq8x7OCNkz5GqT0gXoa/I7FD/8TZ59ywx71pkJrxAIKYJnjRjTd0mBCOUb3iZH2FeusDWSJrt61RAu5OFGe9slllY+vZkIf4Ymwq3t2qwhe1CKSobe4/mH47klQqU0S0w62t+cG6jo4k= Received: from DM6PR13CA0027.namprd13.prod.outlook.com (2603:10b6:5:bc::40) by PH7PR12MB5999.namprd12.prod.outlook.com (2603:10b6:510:1db::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.20; Tue, 26 Aug 2025 04:16:40 +0000 Received: from DS1PEPF00017090.namprd03.prod.outlook.com (2603:10b6:5:bc:cafe::53) by DM6PR13CA0027.outlook.office365.com (2603:10b6:5:bc::40) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:16:39 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF00017090.mail.protection.outlook.com (10.167.17.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:16:39 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:16:23 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 5/8] sched/topology: Unify tl_smt_mask() across core and all arch Date: Tue, 26 Aug 2025 04:13:16 +0000 Message-ID: <20250826041319.1284-6-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF00017090:EE_|PH7PR12MB5999:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c66e1ad-c8a5-4472-a1e1-08dde4575ab1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|82310400026|36860700013|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?8xDJvHhHJ9gOpMH8pGF8SrEoH4a9uAtbrO5Lw6MReoOiEumNqLrk6L9N8P4k?= =?us-ascii?Q?ypbFHBUfHq/2lZz3U3tEdpsnezxdYB3BEZNUxi+XPmp1amozH3UvpyOx8ZA+?= =?us-ascii?Q?ptaTEJ4uK5GQC/6WVa93rkU7BzX3hHTq5pZaDj5Ynw25j76DSPI6fq/nTtxt?= =?us-ascii?Q?pcLem80Q7K58qzjyKmG6mzkARHYgYyJjB05fIinUFThgUlWQxn5aL8NjUlG5?= =?us-ascii?Q?XRhBVmisavi1SvqQESH6cyNLNC5n97A32SnW/OuJnvO/diA8daWrAFTf2wNX?= =?us-ascii?Q?MUu0+nHB1GKaXs69+GKiwmrjTDKrsIalrr0qtk0Sv/yXnXwyhVOtiSJB7Wf5?= =?us-ascii?Q?yhnz7C5mCD4GdfzDqvCwppVcrccWwHd4fcyLrBDKztUG+7FYsOvD7gSULJB+?= =?us-ascii?Q?rkyvY2jTJYbAm9bf9QUB9pF6XEJVY7kzxKobK3hJVu+ndx0CAzWVe7Iogxqb?= =?us-ascii?Q?fc+KRNf735HYBDf6ErB+GYBhneZeDwXzJV9kBPWW4/bq675MbKYrnAJSMp8+?= =?us-ascii?Q?CgfCip2npuLt+SF6zJ8kClJMlm3qJZuZ3wfA3KMVLSA4n39BMjOMHElIIx1Q?= =?us-ascii?Q?k03zPsH155jb6aYh6IVOV0gkZEC6k4FLbxpMGnk4SskxE/q6TZUWRJNE1+ai?= =?us-ascii?Q?9QgBhtcLeN/ivo+RGPqrtNP1wF4yPXSjHUAXcL2YwVjVlFN8KhUH+IluCwsY?= =?us-ascii?Q?oxhzOhZCI+eMIjDtMKITrfM4ETfmVcEmfNtIJar/h0QPW1pWbOPKIBWuYT5H?= =?us-ascii?Q?6sadCuzB4Dp/IlRAxPFTvLxFm9aFdWRoM53MGCDzGZdxtJGw+IJa+x2asDXH?= =?us-ascii?Q?qh1B3SeJSghsm5OYRjvDHtCT/GyzaGiqwEavjdZKrfCT1zl1hC+n6YkOjiu1?= =?us-ascii?Q?kwNHK3D2UX/+AMcD6w583thI29rNUtVH4Cx/zoGlvDZQ5SSDeP7upRuNQF9B?= =?us-ascii?Q?KI/lZ3joQBMZGf4L4kpWwgoAeeJy+ft7aOwh7bXvROmjqFoztAcNvKD5GLA+?= =?us-ascii?Q?Hy4yWy5henOuQtvYa76aGO/GkJSBcOW4809ISH8cSh4mXlNskFH1Ee7Y6kLY?= =?us-ascii?Q?xO82mHbuBtEJcxNNwl2UiIG+geo6RMVrZ66MDglboC0Dcx0QeoPxtoIlwSUF?= =?us-ascii?Q?griOiJWUD+Q7N1oapAmXF0mfJ4FItXuMwM8xC5eQZTCNIB9eDvLYhTgB7wTn?= =?us-ascii?Q?UXGPKFUDe3vFGeXZrqPuL9uySGjitQZmiewOXnsGP3ldHL2/8QcVu8fkY6tJ?= =?us-ascii?Q?CNlGgesdyFFSbt1HvIfCj7hlkBX/7l7IVQ+WvP9EKWqv7q8xNfGd011KTztS?= =?us-ascii?Q?98DgVjwArj/7Kq1v0NR49sMywrLjuxVsKeXYIDRfRdpaVO0cAB7hztEtBbcQ?= =?us-ascii?Q?iWAsfbUEr68Z69N9CdFPp6+M6LvxhH9juCUnOliweiYRl1YFml8t0UnXsAIc?= =?us-ascii?Q?YcmO0FwrnILFgPoRm0pgTvfRmRszdu/VJnkl2a5bfAOXIS6zbYEMIehJTxuc?= =?us-ascii?Q?CbDKFHvHZarOJRK4TVgisJvE1NMGrWv0ZEvX9bXOxkipuGocdCjIEUXjKw?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(7416014)(1800799024)(82310400026)(36860700013)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:16:39.0531 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6c66e1ad-c8a5-4472-a1e1-08dde4575ab1 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF00017090.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5999 Content-Type: text/plain; charset="utf-8" Unify the tl_smt_mask() wrapper around cpu_smt_mask() across core, x86, ppc, and s390. On s390, include/linux/topology.c defines an explicit cpu_smt_mask() wrapper around topology_sibling_cpumask() when cpu_smt_mask() is not defined by the arch/ bits and topology_sibling_cpumask() on s390 returns &cpu_topology[cpu].thread_mask. No functional changes intended. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/kernel/smp.c | 5 ----- arch/s390/kernel/topology.c | 8 +------- arch/x86/kernel/smpboot.c | 5 ----- include/linux/sched/topology.h | 8 +++++++- kernel/sched/topology.c | 7 ------- 5 files changed, 8 insertions(+), 25 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index 7f79b853b221..c58ddf84fe63 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1038,11 +1038,6 @@ static const struct cpumask *smallcore_smt_mask(stru= ct sched_domain_topology_lev { return cpu_smallcore_mask(cpu); } - -static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_smt_mask(cpu); -} #endif =20 static struct cpumask *cpu_corgrp_mask(int cpu) diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index 5129e3ffa7f5..c88eda847309 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -509,12 +509,6 @@ int topology_cpu_init(struct cpu *cpu) return rc; } =20 -static const struct cpumask *cpu_thread_mask(struct sched_domain_topology_= level *tl, int cpu) -{ - return &cpu_topology[cpu].thread_mask; -} - - const struct cpumask *cpu_coregroup_mask(int cpu) { return &cpu_topology[cpu].core_mask; @@ -541,7 +535,7 @@ static const struct cpumask *cpu_pkg_mask(struct sched_= domain_topology_level *tl } =20 static struct sched_domain_topology_level s390_topology[] =3D { - SDTL_INIT(cpu_thread_mask, cpu_smt_flags, SMT), + SDTL_INIT(tl_smt_mask, cpu_smt_flags, SMT), SDTL_INIT(cpu_mc_mask, cpu_core_flags, MC), SDTL_INIT(cpu_book_mask, NULL, BOOK), SDTL_INIT(cpu_drawer_mask, NULL, DRAWER), diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 4cd3d69741cf..03ff6270966a 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -463,11 +463,6 @@ static int x86_core_flags(void) { return cpu_core_flags() | x86_sched_itmt_flags(); } - -static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_smt_mask(cpu); -} #endif =20 #ifdef CONFIG_SCHED_CLUSTER diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index 602508130c8a..d75fbb7d9667 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -37,7 +37,13 @@ static inline int cpu_smt_flags(void) { return SD_SHARE_CPUCAPACITY | SD_SHARE_LLC; } -#endif + +static const __maybe_unused +struct cpumask *tl_smt_mask(struct sched_domain_topology_level *tl, int cp= u) +{ + return cpu_smt_mask(cpu); +} +#endif /* CONFIG_SCHED_SMT */ =20 #ifdef CONFIG_SCHED_CLUSTER static inline int cpu_cluster_flags(void) diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index dfc754e0668c..92165fe56a2d 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1724,13 +1724,6 @@ sd_init(struct sched_domain_topology_level *tl, return sd; } =20 -#ifdef CONFIG_SCHED_SMT -static const struct cpumask *tl_smt_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_smt_mask(cpu); -} -#endif - #ifdef CONFIG_SCHED_CLUSTER static const struct cpumask *tl_cls_mask(struct sched_domain_topology_leve= l *tl, int cpu) { --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2087.outbound.protection.outlook.com [40.107.236.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 41A3D2D46D9; Tue, 26 Aug 2025 04:17:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.236.87 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181833; cv=fail; b=Yza+QP8Qfm+UMmWHbBgzuLY+uFaxaMCZAtwf1gwqNx1w+DBTTiLe9D2woTGV+mUgWMeX4vjzl3PM+8wqBq8JU1YN3hP0S8oNk6BYP8qqOiZ28iJuBeslro27j9F2ZkEqRasCqWHsHOnOewdAR+lrf9lpVEaHds41zmNSX1R2fes= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181833; c=relaxed/simple; bh=9c2T7s150F/9L8n8Zr7y3hAbBjCAyQqVd4O9Vve9Ne4=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=AHgRzOWhRV2o91ImzyPsInq2NWyI0FYTMQBt/X9vd45a7Po9p73VWlXOl9NcSEDy6+X1MpPsBNYD+J29J5p3smqyrciEJuwIaTDXUeznqa/cplkIKC4SJ/CN128tWw6F5vSI/S/5N2pLmV3rqqaE0Cbze5sAihoqUD2IhJRLqBY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=FO5+Y3z8; arc=fail smtp.client-ip=40.107.236.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="FO5+Y3z8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=l3NExZ7RwJYrazZQAaDjcDW7vKL73h4hZjCFueDa+J932oVnYLZvpQqKshdDJ2X14XINOMtgKIBcIF4BBlnyYFqpamICid50rJI9SN20Ue3MD5V8clSimX3WAKzeXwBVjVaaQSKyxAZnV5RPqTnHHatw3iSlLDUOnIYyZ6vNJY2VRK/dhMy4GGIw++u+nLvuMV7lPkwdHHUF6vL7OHePEkY/lNvt/E//KroIXh4EdkFPeou+HxCsEGTqR5Ja27kzD8DkcOnUMgztiLtH58OcdjEXpURpFJJkk9RG+V7tAAjXGOCS096QIEhcZGdKvQ9rBfe8U2GOb16wvXZvtL354w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zSMMkTOzEEAm1ybtgfakw/rdRjNHGUznEG2VGtjGKYI=; b=pz0hT30fMyJWlL7yHkBIodweKQwx0ez5KHHPuRTvZIU5ZfYpXR6XX8ldt4Dbu1sfLZpz/CQ5MMXIvuSHWqk4ChZ28wExRyWCfVgIaZlZvRCR5P4qiFgXCH7fxcT8jCIUhryjQGMLeZbx2jk2s5pRBNaJtI0QZQ68E4zEeIKGdvZhRL+dfzWgaP4Cr8PZr2DplLEx+NwocWH2mLmdsyD6py/uOTF7PVog+qkrNm7juTTg3wGFGFoB6vcdOV1xFlPixLMl7GwB373/gdP7ELrdYkvXfcfLfqTaSpYNLW7k1o2qq3bJmu/8uHvWoAS2oQrs3h8sG818/leNVWQe8Ev/OA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zSMMkTOzEEAm1ybtgfakw/rdRjNHGUznEG2VGtjGKYI=; b=FO5+Y3z8ReXM/b0BRf/2pfoaVPoGv6aEa4TD8Sa0Q70/8gUfBzHab1laWWM1c7eZEhrLyly9AXsgBLzwAzezHkwO0GIng/axhdZU+cvG/jxRzeXhUgYwPWNQA0zmYZubqMo6cZkb9p7Wv/KwkGgfYrQG1b3icj3Lmf7zYRmZrTo= Received: from DS7PR05CA0010.namprd05.prod.outlook.com (2603:10b6:5:3b9::15) by PH8PR12MB8607.namprd12.prod.outlook.com (2603:10b6:510:1cf::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.24; Tue, 26 Aug 2025 04:17:08 +0000 Received: from DS1PEPF00017092.namprd03.prod.outlook.com (2603:10b6:5:3b9:cafe::21) by DS7PR05CA0010.outlook.office365.com (2603:10b6:5:3b9::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9073.13 via Frontend Transport; Tue, 26 Aug 2025 04:17:08 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF00017092.mail.protection.outlook.com (10.167.17.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:17:08 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:16:52 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 6/8] sched/topology: Unify tl_cls_mask() across core and x86 Date: Tue, 26 Aug 2025 04:13:17 +0000 Message-ID: <20250826041319.1284-7-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF00017092:EE_|PH8PR12MB8607:EE_ X-MS-Office365-Filtering-Correlation-Id: 90bdcd1a-5f0a-4fcd-2780-08dde4576c18 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|376014|7416014|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?zYbVvOvQeiVDW+lCZKOBgUNk2sVt7sekS2OH567Y0EQiicqIDn+BukR+oc06?= =?us-ascii?Q?szM3yzLXHbyMHD0BCqqW6NwIpS+jaNV4+sWHJ3WEvVv7xe5M+Y8Yk6uEVnee?= =?us-ascii?Q?X1NHQoOQL1l6av3fdoO1rWvgxd5JYRLbRiyEUAmJC9iM/RtKTbFLqCMXr9gR?= =?us-ascii?Q?HUtEwkEMazn4AnR2/hiZHB/Vq8dAwKFXgQ+wOb+uDmSP5Wt2ETu7pm4UsQOS?= =?us-ascii?Q?LEX8epDfVqGR/6FTDGxxBnQNhiBrWdWEQgai/NNv7CPgCvkNPJd+I8ZhVmNJ?= =?us-ascii?Q?/+5OmEa63M6Mz2+kVEN10pSQ4DoqLP4EIkutDUgkfZV6tD3AH2B3kuHipN+g?= =?us-ascii?Q?u4sC1DErJ4QGJCKT/IkJeNMfYYp6SPcNHXVf2myJiDYxVCTQrkpau8r5TsMI?= =?us-ascii?Q?uZLZO/1S+4j4/vsPF5H1kSNYRvXBHWL9MyZNXtP2t0cCELmuvTQ2mFKoVhrR?= =?us-ascii?Q?Hi2BQ2XIIQKfJQGWV2cMAfvL1uRdjjYzkMAHq179tD0GrHKSL5Yh2hM9PR8r?= =?us-ascii?Q?c2212H6IA5cAqbo2mC96QxWLh+4N8kaIGvceWTSFpfAQjqmVCEQOyt13Assr?= =?us-ascii?Q?xISYzQLBS545yHyOeiN4ccB1TeOLrkJJ+o3CHKSm1qwt7kGduzzQ3g6zINNm?= =?us-ascii?Q?xjQDDBJfT7LP9rFykiQUQZfz++u6YauNDOYSE2CehrYgUCph57zZlSfvXaG9?= =?us-ascii?Q?YcnNJFuGx9HRDuAu6iPvgK/A3Yvq/pJx94R6Jvj+1DnFaH7KgUuXpD6YF0Hb?= =?us-ascii?Q?OFX9r8HLPowUValxy2Sr+FvqMeXtpAzfqjuaJUife7AuGmmytMVagfJsXw61?= =?us-ascii?Q?9iqWQIVkKounLHzdBwypfT+aIji8TK/UEUj3bUfEZrg3et/TV4FuEQ1Ar5aL?= =?us-ascii?Q?oQUswg+fTvDEEA0k6Ly9NXdn6MuYHuDPivpvgkxXMc2u9SEZtfTt1qvbE+VS?= =?us-ascii?Q?OvJW8l/GjgOuyrXu96BSWOhoGaIPYz6MZokIe9ZracQyUjbbI+Y5yh5zPxcU?= =?us-ascii?Q?g1okez7TX6ZcE05YzSaxaMt3TxfW2FwMEFFQ49+Znf9ctf/xmoUkcAUf9ezM?= =?us-ascii?Q?PQRVwvFNoMwNjB7OGlZDAuD8wp0n79OQ4/E5nMnJLQbdnGRSNLK9qVjYKhx2?= =?us-ascii?Q?1p0e9lC/ebjuUoJ3Xqll9D0+sw0zo2rkkfY4IWE8/vavHxPqWhdha+1i4+S3?= =?us-ascii?Q?KiKmcn22RbBsAcLG+s7rsSZ1fV3jCCVS0J2I9cpYL0SOt0gI6v5Vje7I4Yfv?= =?us-ascii?Q?ckw/Nj32mDjiX+/w6gEXJIt7VvuSd+YQaldG0+i+BQd0u22pmbYLkIYGQHy3?= =?us-ascii?Q?nDEif5ric2VhI2ZInmTxz1p7HoDUFQ3h5/qJxiVGBojbxZdkH2GlMhGjRaxz?= =?us-ascii?Q?/AHHxHB/ShbNXOxDdInZkSY89DTwOkAlmRmDHCJSAKJyupykx1iQUtkj7GVC?= =?us-ascii?Q?t0s3Y4UWZT8mPhEBpfSxJcwhS+5gNtR5Bx+so04IJdVxsvi45cQ28aGT1jbt?= =?us-ascii?Q?rHIXc8jit6C04OPC3shTmJWqFw6fV64erIOBsVOUBtjxE8YhN3E1RCKavA?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(36860700013)(376014)(7416014)(1800799024)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:17:08.2468 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 90bdcd1a-5f0a-4fcd-2780-08dde4576c18 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF00017092.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB8607 Content-Type: text/plain; charset="utf-8" Unify the tl_cls_mask() used by both the scheduler core and x86. No functional changes intended. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/x86/kernel/smpboot.c | 4 ---- include/linux/sched/topology.h | 8 +++++++- kernel/sched/topology.c | 7 ------- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 03ff6270966a..81a40d777d65 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -470,10 +470,6 @@ static int x86_cluster_flags(void) { return cpu_cluster_flags() | x86_sched_itmt_flags(); } -static const struct cpumask *tl_cls_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_clustergroup_mask(cpu); -} #endif =20 #ifdef CONFIG_SCHED_MC diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index d75fbb7d9667..e54501cc8e47 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -50,7 +50,13 @@ static inline int cpu_cluster_flags(void) { return SD_CLUSTER | SD_SHARE_LLC; } -#endif + +static const __maybe_unused +struct cpumask *tl_cls_mask(struct sched_domain_topology_level *tl, int cp= u) +{ + return cpu_clustergroup_mask(cpu); +} +#endif /* CONFIG_SCHED_CLUSTER */ =20 #ifdef CONFIG_SCHED_MC static inline int cpu_core_flags(void) diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 92165fe56a2d..4530cbad41e1 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1724,13 +1724,6 @@ sd_init(struct sched_domain_topology_level *tl, return sd; } =20 -#ifdef CONFIG_SCHED_CLUSTER -static const struct cpumask *tl_cls_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_clustergroup_mask(cpu); -} -#endif - #ifdef CONFIG_SCHED_MC static const struct cpumask *tl_mc_mask(struct sched_domain_topology_level= *tl, int cpu) { --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2054.outbound.protection.outlook.com [40.107.223.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E63E2D661D; Tue, 26 Aug 2025 04:17:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.223.54 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181864; cv=fail; b=rgP8vWSaftwC+32p65WEX2VSBOy+JHpJ0JuOuTNqWIueRGm3g3BErueEcRLWYJ228jV2aaj756yrsL/XNSf9XUFGCEXv66DjWaMcvVi6WcUI3IwL3yeSZD7xcoP18m2wJ7bCFpjWabkUgEE3Yp0wmv441n2VcEVz8GmmXsEubpM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181864; c=relaxed/simple; bh=/z6WciTRzFt6aFnMmbgWqOmLvOE8rQyOkcRgz+s6joM=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=uZMT3hScP4u+sLUTTpLdTl/BvONXNwlyAzBB4BtzSDPDnS7P5Ur+yFSQAK9n4TMgn8Q1QgJr/a1vSU9fsfKzy+L4fUbis97acgaNLRacHTcB20yMNBcGiE5sG8dAHAd3R84CH2g35g+MYh/XqDDlN6JnTXOxVCnkDX1yod1HjEM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=O/lY8hRP; arc=fail smtp.client-ip=40.107.223.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="O/lY8hRP" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=mVWDGwuQdRvQkpnvfWPzvVEhOtUd6atVi4+F9CVRiyA9GgxAmx+RejbMBHDAPjk/l7nLigTrYCDcKOcuuhml6yl/5Gu64HK+GhWKTB/Ded20MzR6GiJyhgejeVIVXk7eTF40JTUk9+qxREApLAOB7ZTKmGj9T6gHV3mYQ1rQ/TZEvlyMI5skodwfUDhULCgd58EnH/8nZ7RRzYf/Y3gR4T7e+AA6ofd1c7wEo0y5O8WJ8M6YLq039toeHMkRZ9ooQRFSpBjCM7qCZCaz20I/p+diJx4TT26+ndnOB3bukom5IX2MNwCFEbeDI4UVxAE2bs/QGZZVd9y6os02j/+u5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sYnaRDBzFZBmxyPL0JhaaiyuGWZefXq0zWh5H05PFt4=; b=Sw52nqxorEcW7gA3Ondid2u37MMjnirIJotfalLPxW4n6ufdX0yWi5JHCxLLM6II1TBKJCTNZy7TkwkjkhyXo9WQ86tuXP6fXve9ycjN9pc16I8u4dtS1DqjRY2ln054OfguoZi1zjJ9gwwOSSsNNOaryUK8gPFa2AfWCLLFx+iqUDupSS9CH5aR3e/JRtTrpf5jT9Y/rxlrEHi+uyefj/LqEPRUsqHsbFtLUwQhTJ+wapQyB2HEU4vKPCUZlkLmuRocItoFR1q4yjpUoDKJbMilwx+F19w+zIRZbMF2vFYwYePMKi2+4/VOoFiYX8up+HxErfhbR3umD0WCQLL7gA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sYnaRDBzFZBmxyPL0JhaaiyuGWZefXq0zWh5H05PFt4=; b=O/lY8hRPUwDGentY7UwBXz2O4+GmLix+LpIzmGN4hMV63TwQ4ya9jrAyVY5eHvtf9LlSJgkRUH6oSZeIpoAagOFUp+06bK6SkwfnsoiU5ksMgGGWCPUUWyTTliANbXsVPHSAuVpJUWZtStiUCHLdvASQTDFGDlYTbeGmgJNZFAs= Received: from DS7PR06CA0006.namprd06.prod.outlook.com (2603:10b6:8:2a::7) by MW4PR12MB7311.namprd12.prod.outlook.com (2603:10b6:303:227::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.21; Tue, 26 Aug 2025 04:17:37 +0000 Received: from DS1PEPF0001708E.namprd03.prod.outlook.com (2603:10b6:8:2a:cafe::4b) by DS7PR06CA0006.outlook.office365.com (2603:10b6:8:2a::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9073.13 via Frontend Transport; Tue, 26 Aug 2025 04:17:37 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DS1PEPF0001708E.mail.protection.outlook.com (10.167.17.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9073.11 via Frontend Transport; Tue, 26 Aug 2025 04:17:37 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:17:21 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 7/8] sched/topology: Unify tl_mc_mask() across core and all arch Date: Tue, 26 Aug 2025 04:13:18 +0000 Message-ID: <20250826041319.1284-8-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS1PEPF0001708E:EE_|MW4PR12MB7311:EE_ X-MS-Office365-Filtering-Correlation-Id: 026de211-a919-4121-3960-08dde4577d52 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|376014|7416014|82310400026|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Ut72yEIRbDREY6MMQzRO1i9j+neW0C40FhfgRKY7ATeWElVFyVoG70pgcfKs?= =?us-ascii?Q?QOBbOEzw0yLSHI5BVMQZk0+omMUNxtWmkMDB6omT4PQf8WkIRQ/M0DLejCZX?= =?us-ascii?Q?WTQoAKtxKhoV0EgqkvQtBIGJLBREmnxe2sqEPTQgcYGKPffWtgUf53cMEMXo?= =?us-ascii?Q?3PzobrwDIAnskFUODuGX0u7UgZT20OgYxkeMgZQ74I/UVL0eu0JqXZTJVX0k?= =?us-ascii?Q?x33aHSFLIxJwo802khWGKPz9GcC554a3IMj011fvKcH4XKTi7QHdIOz7UWTP?= =?us-ascii?Q?Vp0B3z1zcMEDvm9LM1/zFQNbr3fx0+7yLn6E6/+bGE7v9yRQdxDGpbVmlGQd?= =?us-ascii?Q?Eh2oyJea6Lsxm9PLC/byDW+oXELPsQ29+zvwyHLK/HwBKMoytpOFewXtCQwn?= =?us-ascii?Q?yWB7Yt/g22nZ6eNNtZUPJUPO1kG7IuhNjE2dDZT3lqDPkj1aynitJJ9D5WWj?= =?us-ascii?Q?BnbQ8dVuw4SekVxfXkMRgSKenuV+AqahyqMoml28xuoqilrZZRNOXQsyZ15h?= =?us-ascii?Q?glEsMs2M24P2OGg6wYDJF20NhxWpgH07si2WLyAVlPET+4tJe1PiQYZIVIV2?= =?us-ascii?Q?R6Xn7EeFPHD/MY4yxzbYTFMTFA/Hpz9882b1doyx4/DKVVftxvvNO0dNMfCN?= =?us-ascii?Q?bf7/LHp3pneyOqmPyh+jIDwpBqxgVoVCfUthj2BtaqorDexf/sCyYzFAeUxJ?= =?us-ascii?Q?luSM7xaMsPqdX7LOx+RTFKoL0U174NDaAuqaZPEZJNZwCwZ13MoU9fecOZaX?= =?us-ascii?Q?dEF7jajbDIdvmvN+4p477qVHcbvr/I5Cg0gZUflT6DmJYvttbNDMPb/nwm8B?= =?us-ascii?Q?QTDav1crzEgbaqPSnmZ3he/Za3Do1SlWcsKW0sEPsTw7CNYJkwXs35HwhnT9?= =?us-ascii?Q?kANmqBaKut7Go/qTm158mvsJ783+cIzUWOONfP3xqR53n0gOuu82WfvvVl44?= =?us-ascii?Q?rfpO84yAORDbqa1CwiK05LEODcaxqHVJybbvc/bnF7MJbCE9yMYHe4/4+T+v?= =?us-ascii?Q?GugsYJsY40NdS4vQgMVl4Wml8H7xzX6OvZX1WM91hgRNiZgqNr8w1MSsb3Wv?= =?us-ascii?Q?eDrrA1Z2j2jyeEKmNMssV9urJ1v5L3D43888VKE8kKosmCW7xy3w6MTiDh51?= =?us-ascii?Q?cIi0TpA+3qyO1QETSumz9a+p5JfUhwdI7m493zJmJ6Dhnjmcnz6zH6UP7zS/?= =?us-ascii?Q?tUBwsIr38b8Np5mWjzPBe3fb07j4uk4sFOcI672JtVVD8XTCCSLPCizfc65o?= =?us-ascii?Q?JwJ4SAN89JfgaQBq09FYkVPecEm9dkqSmbkbzb7z5NVUQ/fUIgLdDuvE7ztc?= =?us-ascii?Q?fRXy6mm1aKYq8rZEmKrZKpfS3Xg0ilo+wEq6d8g3lRUxVGwvBHRd4zi9EDW6?= =?us-ascii?Q?SiPoB6IIJWa4NntGBYl3nHQXFtTyquCrj8OxR5FFWIz6gkuQ+n7oJNrQ8I2I?= =?us-ascii?Q?MNSwEBbPD0ZmLDaYMRlhgooUFZkmfCPSXPYHk+51IVv9Mg91z7WM2exj9Ohw?= =?us-ascii?Q?Kexs9EN1Rb9bwgLkNq5XZMHdX7lO2K7Q8C/0R/eeOGo5uwS19doPYdm89w?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(1800799024)(36860700013)(376014)(7416014)(82310400026)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:17:37.1494 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 026de211-a919-4121-3960-08dde4577d52 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DS1PEPF0001708E.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7311 Content-Type: text/plain; charset="utf-8" Unify the tl_mc_mask() wrapper around cpu_coregroup_mask() used by core, x86, powerpc, and s390. No functional changes intended. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/kernel/smp.c | 7 +------ arch/s390/kernel/topology.c | 7 +------ arch/x86/kernel/smpboot.c | 7 ------- include/linux/sched/topology.h | 8 +++++++- kernel/sched/topology.c | 7 ------- 5 files changed, 9 insertions(+), 27 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index c58ddf84fe63..40719679385b 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1062,11 +1062,6 @@ const struct cpumask *cpu_coregroup_mask(int cpu) =20 return cpu_node_mask(cpu); } - -static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_corgrp_mask(cpu); -} #endif =20 static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) @@ -1729,7 +1724,7 @@ static void __init build_sched_topology(void) #ifdef CONFIG_SCHED_MC if (has_coregroup_support()) { powerpc_topology[i++] =3D - SDTL_INIT(cpu_mc_mask, powerpc_shared_proc_flags, MC); + SDTL_INIT(tl_mc_mask, powerpc_shared_proc_flags, MC); } #endif =20 diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index c88eda847309..8dbf32f362e1 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -514,11 +514,6 @@ const struct cpumask *cpu_coregroup_mask(int cpu) return &cpu_topology[cpu].core_mask; } =20 -static const struct cpumask *cpu_mc_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return &cpu_topology[cpu].core_mask; -} - static const struct cpumask *cpu_book_mask(struct sched_domain_topology_le= vel *tl, int cpu) { return &cpu_topology[cpu].book_mask; @@ -536,7 +531,7 @@ static const struct cpumask *cpu_pkg_mask(struct sched_= domain_topology_level *tl =20 static struct sched_domain_topology_level s390_topology[] =3D { SDTL_INIT(tl_smt_mask, cpu_smt_flags, SMT), - SDTL_INIT(cpu_mc_mask, cpu_core_flags, MC), + SDTL_INIT(tl_mc_mask, cpu_core_flags, MC), SDTL_INIT(cpu_book_mask, NULL, BOOK), SDTL_INIT(cpu_drawer_mask, NULL, DRAWER), SDTL_INIT(cpu_pkg_mask, NULL, PKG), diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 81a40d777d65..bfbcac9a73d1 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -472,13 +472,6 @@ static int x86_cluster_flags(void) } #endif =20 -#ifdef CONFIG_SCHED_MC -static const struct cpumask *tl_mc_mask(struct sched_domain_topology_level= *tl, int cpu) -{ - return cpu_coregroup_mask(cpu); -} -#endif - static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) { return cpu_node_mask(cpu); diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index e54501cc8e47..075d1f063668 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -63,7 +63,13 @@ static inline int cpu_core_flags(void) { return SD_SHARE_LLC; } -#endif + +static const __maybe_unused +struct cpumask *tl_mc_mask(struct sched_domain_topology_level *tl, int cpu) +{ + return cpu_coregroup_mask(cpu); +} +#endif /* CONFIG_SCHED_MC */ =20 #ifdef CONFIG_NUMA static inline int cpu_numa_flags(void) diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 4530cbad41e1..77d14430c5e1 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1724,13 +1724,6 @@ sd_init(struct sched_domain_topology_level *tl, return sd; } =20 -#ifdef CONFIG_SCHED_MC -static const struct cpumask *tl_mc_mask(struct sched_domain_topology_level= *tl, int cpu) -{ - return cpu_coregroup_mask(cpu); -} -#endif - static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) { return cpu_node_mask(cpu); --=20 2.34.1 From nobody Fri Oct 3 20:25:52 2025 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2055.outbound.protection.outlook.com [40.107.223.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 874B71862; Tue, 26 Aug 2025 04:18:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.223.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181893; cv=fail; b=pytdfOmUYPhMFZY2ZXpooqlWZ0ny3K4RkxeQbMZQHAIuv8VY0ZKm7G6amIf0qZls1MNTMpBLmsMixyg5WTH3gRT78s2QTGa2QjiHuFG86JN8M73OCS+ks0q2/IwNo6CbDXSKvFZs+DRU9QdoLIeJsmxlvJ5gVLx+CnOGhEvERf4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756181893; c=relaxed/simple; bh=HFkmFZEvxNZLvM8FsFGastNphFN88iZpvXNX5urtHlE=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=nCsnj58e8zUmQv5mNbVK4uvsn2Hq2DqPJVcoYqjcIOyfntRfYg7u5ooOvUwxtsPxsRmjtCkiARUT5iBqlTSXs7N13kO9YPqAEybFbKeSNA9MqchkXHRJw9XaVuv+ZAhJEgoy4CX/5j01M0Dh7Xi4k+V36GFYcaYwltvjRyutNM4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=hG6tyzxY; arc=fail smtp.client-ip=40.107.223.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="hG6tyzxY" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cmRhKW7vSQQeMAqU4Su7YQhd+QgaSsWp6/y6+dvkDbmAjXplKQlKNNo9mYrM0Zq2p+OlhAQTwuZLEIou18TEXlgk1jmAjt5u/wQ3sJSjeTj7gnhNLSq0y1X11lsL0TL+RmwB0w4nmTkM9Agx2Vb0IOHbCDwnTIwvok3anD3bX6S8latDgYtyORvkp7mkW1JBi2zin7PDyGgG4QdOBgFl2X3VAlj0LxHuKIM1/6qBQhejzREaxhcyvCJebjAGwIjNB3mRi5p6NoepSoLiNgG1vHc2nspiuIr8GnetAHblN1fxARmZ6IqBKxiL0hqS5NheBuTb+FMtGrdwv1Gc6424UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Trrev8dOAXH9haOFCq1Q86Fg7QNBF/bvlm/NED7IrNQ=; b=t4tKyaLAClwJeeHn+o0ii+4+GDJVflq4aXkNid5RtlFiTXRmJL9SIGW3TPCKMP8o9GfLzRGBCqi2lJ7cGvRU06AhazRvUV1IQrgLZTION1LR5qqtpwj63Yr3KcAYI2PCdbCdQ/0GpVllR4Cl61O3lQkUymsOOjUBVYZevc/p4L72VeEOtTwxbq8nyQNcYeBLMLUKF6RL+0LF8m6p9M34x0yPx0lg3GOGmUp3rrhjhFxGNzzOOT5J+hHMwLpQwOrK9HC8hf/tp1VSTfmpm4d80UYKLTwb0kJvelUkWfRr0T7PhMHnZNlkfvgLHjN6u7cQYZEX27/aCMUt+MNhrMNGSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=linux.ibm.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Trrev8dOAXH9haOFCq1Q86Fg7QNBF/bvlm/NED7IrNQ=; b=hG6tyzxYbNoXRGogDfDkWdXl56PEGMLvkK/NqZ+FG4yWZEoeEb64IBVYzpNJ9I6vLv4eeNB1UIUIGqy65cLwZdiyVtuIAnvMlV6642kSoqA2IuDCuqRJ0WJKmq6Uz7rrBmyb3Jv6U+OHYuNVAJBKVALTjKw/sBn6A16RuW50ZK4= Received: from SN7PR04CA0090.namprd04.prod.outlook.com (2603:10b6:806:121::35) by CY5PR12MB6383.namprd12.prod.outlook.com (2603:10b6:930:3d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9052.21; Tue, 26 Aug 2025 04:18:07 +0000 Received: from SA2PEPF00003AE7.namprd02.prod.outlook.com (2603:10b6:806:121:cafe::b5) by SN7PR04CA0090.outlook.office365.com (2603:10b6:806:121::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.21 via Frontend Transport; Tue, 26 Aug 2025 04:18:07 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by SA2PEPF00003AE7.mail.protection.outlook.com (10.167.248.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9052.8 via Frontend Transport; Tue, 26 Aug 2025 04:18:07 +0000 Received: from BLRKPRNAYAK.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Mon, 25 Aug 2025 23:17:49 -0500 From: K Prateek Nayak To: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , "Vasily Gorbik" , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , , "H. Peter Anvin" , Peter Zijlstra , Juri Lelli , Vincent Guittot , , , CC: Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , , Li Chen , Bibo Mao , Mete Durlu , Tobias Huschle , "Easwar Hariharan" , Guo Weikang , "Rafael J. Wysocki" , Brian Gerst , Patryk Wlazlyn , Swapnil Sapkal , "Yury Norov [NVIDIA]" , Sudeep Holla , Jonathan Cameron , Andrea Righi , Yicong Yang , Ricardo Neri , Tim Chen , Vinicius Costa Gomes Subject: [PATCH v7 8/8] sched/topology: Unify tl_pkg_mask() across core and all arch Date: Tue, 26 Aug 2025 04:13:19 +0000 Message-ID: <20250826041319.1284-9-kprateek.nayak@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826041319.1284-1-kprateek.nayak@amd.com> References: <20250826041319.1284-1-kprateek.nayak@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA2PEPF00003AE7:EE_|CY5PR12MB6383:EE_ X-MS-Office365-Filtering-Correlation-Id: 9cf9574b-495b-4c2d-1197-08dde4578f92 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|376014|7416014|36860700013|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?B3gNa4l8fQ8A2pHWg75ACnMIeYE0RJ8cveFPqmSRT2HozhpCh2hQCecqYNQ+?= =?us-ascii?Q?d47IR8e8GYgPhS33ZqGDswuM7VLxLQOFVBfHYMbgRwDGPmJKGuxra12yFbXm?= =?us-ascii?Q?dgbdepYWl2Cny+fM2JpZjhixkvhf0ImRH3F2tlm9iZtIG1IlZE37IIB8kNK2?= =?us-ascii?Q?ajgXpikrzJOlfZqfiFndIf7PA1fUosVy0pqPRsj0OHzuNVQtMi35ewNmv+q1?= =?us-ascii?Q?X95fcp7ul0qQSSoY4IZugpyH5Xvhm0Er1tI2sr69simBHHLcNWPPWdFTMv8g?= =?us-ascii?Q?ZGkbZsjoXHF6cRnhDhyRVSBHa8T3vaxn5yicUbP8Z6qCEZjjrJ1EA+cOOyYw?= =?us-ascii?Q?5GhLGacwqMHuLUuipTpAU0W1fWOJHtaxNq2zs+FDtwMjVKTGYxbxeIj9ZiX1?= =?us-ascii?Q?jpfJlD4gxwVQp2II3+9i6yDQgOd14fc+Vo8NJmtmaYQ5WToURoOIAf+2Jdtl?= =?us-ascii?Q?80eG6HMUivE0RIYCwotYPvl8Jh6mbNuL+wGdZDXhFCLVIW1thUkWwTo7TtJH?= =?us-ascii?Q?OUitqG2fnIkW6UXHpHQnE8pQhx93ITjdvFqL8fZ8y8dJJNqVyUjHEmTIBOKZ?= =?us-ascii?Q?GsEcbPxDGeoDY4UoaYb3ZnfZk0UwY3ew0xtgTCUvdEFSjCeQBzqzt/dUFKXM?= =?us-ascii?Q?jokkiHl4oPVqTOqGeccgcfkZOkxzE+HImDN86a2PjeE69e8Nfciq76EgTDkj?= =?us-ascii?Q?Jz0D9A5TqzmqWoFY6YdWzFfi/WLJMgTny0GjLCeAEbIoXpKkQPP9h65QN8NY?= =?us-ascii?Q?vKkJPCQPuM0GNpaa8etmcdAl9nqNIz2302jZtbJ8TE5Ye7Ar5XsCXNRYHxhM?= =?us-ascii?Q?3y3Mfq+SsuWeocFJJ6QlzQ5pPDKG1j2paeNfglz+MaGlyfE4y8+lM82pdj5F?= =?us-ascii?Q?VGrSjaq5BpmyXxSSiQNtEo2FNLlPqBH001Fq8foHuHcvmSPzC0kJWaupqtzE?= =?us-ascii?Q?UsBHTTcEPVJPhlOV5dpdBCZhvx/TNWFz+DB35UcXmvUsOcYOanGLpQGls7HE?= =?us-ascii?Q?Z/eiWzCdEjJa5n+XMd5sJtZ2Lz/hu7zY0P6iXGP3ZZIRyXYmvwDcn07nkJ/c?= =?us-ascii?Q?U+Lgh1OWmNXSLrjpCjraYWnMFFg6S+Nl1bLtqcRqJkPHq7mOBCCZwwGUPd/e?= =?us-ascii?Q?nn4LvGM1aErPwoL5askZQbgszfub0MOd8i99cGqnB+jto74OzzjuRqpTq5FG?= =?us-ascii?Q?gbsGlYUAvU6qE58Xm3aZQGcxoi06xL4C5bKLj5sSc4vux/YY++9tixuR+bjm?= =?us-ascii?Q?XNE4ZjpoUPdFv76bxCIutaaocYDEx+yf/CcEu4PaDXdhKJp2h6EzJnES7Fl/?= =?us-ascii?Q?VX5WRM3tYTodB6eWkhdZNYd43ilT57rp3cGH7LysZTO+aXbisOGNdx2Ugrwo?= =?us-ascii?Q?6LC3lDCcuGSbhUl+tst8BB5W6O3jRIGBT1USlLiYGHAE5/m+2mu7cN0plpon?= =?us-ascii?Q?OfmJ4BLuUlMoqX1U+Iz/fFLwu+ptCF5V7RbYgQQWgOpZAj3U7WVgG3AL7T49?= =?us-ascii?Q?mc6YcJC2X5mokL6E8Wrv9gR+7ruyTDfOCCnjBrCDw0bBkftgn4E/NFl8ig?= =?us-ascii?Q?=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(1800799024)(376014)(7416014)(36860700013)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2025 04:18:07.7834 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9cf9574b-495b-4c2d-1197-08dde4578f92 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SA2PEPF00003AE7.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6383 Content-Type: text/plain; charset="utf-8" Unify the tl_pkg_mask() wrapper around cpu_nod_mask() across core, x86, powerpc, and s390. No functional changes intended. Signed-off-by: K Prateek Nayak Reported-by: Leon Romanovsky Reviewed-by: Shrikanth Hegde Reviewed-by: Valentin Schneider Tested-by: Shrikanth Hegde Tested-by: Valentin Schneider --- arch/powerpc/kernel/smp.c | 7 +------ arch/s390/kernel/topology.c | 7 +------ arch/x86/kernel/smpboot.c | 5 ----- include/linux/sched/topology.h | 6 ++++++ kernel/sched/topology.c | 5 ----- 5 files changed, 8 insertions(+), 22 deletions(-) diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c index 40719679385b..8e869c13f7ed 100644 --- a/arch/powerpc/kernel/smp.c +++ b/arch/powerpc/kernel/smp.c @@ -1064,11 +1064,6 @@ const struct cpumask *cpu_coregroup_mask(int cpu) } #endif =20 -static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) -{ - return cpu_node_mask(cpu); -} - static int __init init_big_cores(void) { int cpu; @@ -1728,7 +1723,7 @@ static void __init build_sched_topology(void) } #endif =20 - powerpc_topology[i++] =3D SDTL_INIT(cpu_pkg_mask, powerpc_shared_proc_fla= gs, PKG); + powerpc_topology[i++] =3D SDTL_INIT(tl_pkg_mask, powerpc_shared_proc_flag= s, PKG); =20 /* There must be one trailing NULL entry left. */ BUG_ON(i >=3D ARRAY_SIZE(powerpc_topology) - 1); diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index 8dbf32f362e1..8f5b6ecc055f 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -524,17 +524,12 @@ static const struct cpumask *cpu_drawer_mask(struct s= ched_domain_topology_level return &cpu_topology[cpu].drawer_mask; } =20 -static const struct cpumask *cpu_pkg_mask(struct sched_domain_topology_lev= el *tl, int cpu) -{ - return cpu_node_mask(cpu); -} - static struct sched_domain_topology_level s390_topology[] =3D { SDTL_INIT(tl_smt_mask, cpu_smt_flags, SMT), SDTL_INIT(tl_mc_mask, cpu_core_flags, MC), SDTL_INIT(cpu_book_mask, NULL, BOOK), SDTL_INIT(cpu_drawer_mask, NULL, DRAWER), - SDTL_INIT(cpu_pkg_mask, NULL, PKG), + SDTL_INIT(tl_pkg_mask, NULL, PKG), { NULL, }, }; =20 diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index bfbcac9a73d1..6c0ab30a80e2 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -472,11 +472,6 @@ static int x86_cluster_flags(void) } #endif =20 -static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_node_mask(cpu); -} - /* * Set if a package/die has multiple NUMA nodes inside. * AMD Magny-Cours, Intel Cluster-on-Die, and Intel diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index 075d1f063668..807603bfe8ff 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -71,6 +71,12 @@ struct cpumask *tl_mc_mask(struct sched_domain_topology_= level *tl, int cpu) } #endif /* CONFIG_SCHED_MC */ =20 +static const __maybe_unused +struct cpumask *tl_pkg_mask(struct sched_domain_topology_level *tl, int cp= u) +{ + return cpu_node_mask(cpu); +} + #ifdef CONFIG_NUMA static inline int cpu_numa_flags(void) { diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 77d14430c5e1..18889bd97e22 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1724,11 +1724,6 @@ sd_init(struct sched_domain_topology_level *tl, return sd; } =20 -static const struct cpumask *tl_pkg_mask(struct sched_domain_topology_leve= l *tl, int cpu) -{ - return cpu_node_mask(cpu); -} - /* * Topology list, bottom-up. */ --=20 2.34.1