From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010070.outbound.protection.outlook.com [52.101.193.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 591473537E6 for ; Mon, 16 Mar 2026 08:50:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.70 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773651057; cv=fail; b=VoSlWoH3iFDvRRvw24LA5ACADdRtQAmCShAp9V2DlGiphbHATbfNsQo7cqNjbCxoFrZqvQNp2rNxLOyjQIXekyjnBsk9EvmgL2YHCQfASnVwbTPxGYMue343qAwB7L3SP5vbSPxE6PW6U/sj+R56jJB0EzzE75TDxl/V1uaflgk= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773651057; c=relaxed/simple; bh=nQDeobxHu0By8X+imSyqcOCGgGLqgU71SBbZYfkLHmk=; h=Message-ID:Date:MIME-Version:Subject:To:CC:References:From: In-Reply-To:Content-Type; b=G7wDIh8gHpIooc2JR9PKfBO0cmy6Q3F2i5YjO4+uU9e7NaYBpSiTHByWigSRQO9jbv0Yslsrle00PeRKCfL8QA3MIhnZpJ/MBqaDvt0G21uWR8AX5LVbsULOch+ogvuQe2qZdSTzNv7YjRtPCGzk4z8/y1RGMFF/3b+6VRskOfE= 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=eFX+kW8m; arc=fail smtp.client-ip=52.101.193.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="eFX+kW8m" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lOXxiW6YAokqaTRwqBdkOnkpwgdbyOTHOsRCpRfNOtr2qxBnbbetroF127K2OKv1o8zDaUXZF6G0NJpCJWjffM/ld929JDJjY+dmv4b3pRVPZv9CNw9GcE1H4Bcd2mMMPdqPOj+awWKnYRmOIeqFp1HPg0w76zaVICySLXY07WbhymSaATWLq7AYftq8AfrlISL9T3MzaofvI97HP1d9adtW7Cvkb4dWWaQDhG5BuFtwqkZFbmnZLD3+kQeDQoUcno3PI5H2vSoDTGjqV7Uwh9pYQSDdfLNbwrKw61HgBF2MeI3j25Vy2SXdRmKQ9iU6QiGkAkf0LU9JjPjrjRQWcw== 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=TtM4peyWDmTR302vQ8REs9eFYQeLLUd8nUS1BUiSQJU=; b=CEbuO3NRgnyqhBsT7W0qfcIjVwzPSdxg4+UyDDb9HIfzmjbpS69QVgAeGN++IIyHNyTsv3gCbxBa51lhZDd57vw3jwzuMEDwUw38IwrlgICR53+yoqv3z/RVDU+JDoOZyQ0h+7zkl+N6OvhztSTfwvM/ACwkEjf+gJTZpgUtHP3qqAVIHuH8ZF3Ki/mGcB8LWC7HHn4xnB/g0Rq7oNIFKAg+L808B39TbFibOhBTUnXVwQX80o6CVNjVJhVO3EXo/MmEZ4AUgBAmtQ1uJqThJnWkHSaYf+W5k2IAsf3v+pTNaqD9Jlw8pZVKDUJCIdT6KEGazZyDK8FReQahNbQi0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=arm.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=TtM4peyWDmTR302vQ8REs9eFYQeLLUd8nUS1BUiSQJU=; b=eFX+kW8m3f96VPHaizLI5EkCtYG69gLHhgWycFNj+5SrkQLt7j6yR9QUj7l0DUb1AW8F8pWHkqHH87ANoL9cq6Q2Xs9wGQZq2qZYenvKtJ9HZPQqtNYyNgXifdW6BIns9cgPSP7u2qhKO3w7ZGxJ+rUXemD0P2LSGYlWtB9yjU8= Received: from BL1PR13CA0210.namprd13.prod.outlook.com (2603:10b6:208:2be::35) by CY3PR12MB9655.namprd12.prod.outlook.com (2603:10b6:930:100::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.17; Mon, 16 Mar 2026 08:50:46 +0000 Received: from BL6PEPF00022573.namprd02.prod.outlook.com (2603:10b6:208:2be:cafe::f4) by BL1PR13CA0210.outlook.office365.com (2603:10b6:208:2be::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9700.25 via Frontend Transport; Mon, 16 Mar 2026 08:50: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=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by BL6PEPF00022573.mail.protection.outlook.com (10.167.249.41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9700.17 via Frontend Transport; Mon, 16 Mar 2026 08:50:45 +0000 Received: from SATLEXMB04.amd.com (10.181.40.145) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.2562.17; Mon, 16 Mar 2026 03:50:45 -0500 Received: from satlexmb07.amd.com (10.181.42.216) 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, 16 Mar 2026 03:50:45 -0500 Received: from [10.85.36.114] (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server id 15.2.2562.17 via Frontend Transport; Mon, 16 Mar 2026 03:50:41 -0500 Message-ID: <3e9ecd23-2a0c-4155-9bf4-ab2ba6fa4ef9@amd.com> Date: Mon, 16 Mar 2026 14:20:40 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 2/9] sched/topology: Extract "imb_numa_nr" calculation into a separate helper To: Dietmar Eggemann , Ingo Molnar , Peter Zijlstra , Juri Lelli , Vincent Guittot , Valentin Schneider , CC: Steven Rostedt , Ben Segall , Mel Gorman , Chen Yu , "Shrikanth Hegde" , Li Chen , "Gautham R. Shenoy" References: <20260312044434.1974-1-kprateek.nayak@amd.com> <20260312044434.1974-3-kprateek.nayak@amd.com> <7182d0d5-be42-42bb-8864-189ddedbf534@arm.com> Content-Language: en-US From: K Prateek Nayak In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Received-SPF: None (SATLEXMB04.amd.com: kprateek.nayak@amd.com does not designate permitted sender hosts) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL6PEPF00022573:EE_|CY3PR12MB9655:EE_ X-MS-Office365-Filtering-Correlation-Id: d6538eca-d655-4770-9b82-08de83391d30 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|82310400026|36860700016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: FOETs0Kd5FfXZEGYLa9zWKPd6XsttwUcYd+Or55mbpX6Uo00ndajQxlipov2ebE6eGaxZR3DdB3x2epgs5q7XOIwyr9paiNW0+jeZkN7WWYPrvMqVb5RqJZQhHVo9LEkKRl41C20Ky5GIXLLVnU3/DW+Sj8G0r0g1UCI5yMo+JqhrOTbdA4N4GmxgAfiMwd2p3pgwguN/Zr184YtjeQdg1X27s8pHxj1y0KDGmW2EbbRoc6BkSTYOMUBaLv20tuChRFRkl4cSzKAW7XBfQfsjeFcDjpTo6Ea1sVvVqdldV+SFcF/DbR/cOqjTdpmbrOlbRZt4Ce4HZ7Lj2Ien0DSMAzF35MtLxOIT78HNq0wN9CeaJTIZ0w/AGRbEeTpukC1+NQfrBvWAFslP78wFjXpEOWYwGDiIGrWOLUdRMbLVu/+rxQzOqwpZb0lojRde0MkTwAnOUfcZ2GEqTn4Sz7vU/FHkjp8cp3bmfIJ8Kin3NChBMFY+Rhw6KWQmp6QPc3TH4AxrYBfVbTn8Ut3WsNmyUuLhdyvzaJpy+l1Y/yuK5g2oXuGR2GsB/NMSpeuxUAZzNfsjCAkyHTTAdQzlNM8ZqCHuKBQjBE2Ay87EIy7+eE31swJkk9rU1U2wizfOa2KRWTPa8r2GeKzTSRSEuyYhstR+qQ7wlG3kxkLGHOPemh9JTmXjsUERTuw2UmxikM7khhAd8pGFHpTWU0Emcmz3hZ//idR+2C6ucGNMLEYF6vcYksdrr5hx6mwhAw2poNyE3KBnRcMQ+LiB7tD2tks9A== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(7416014)(1800799024)(82310400026)(36860700016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: eSo95pPC8bSfFG/dLblivp9/XU3aGQf9X6oKaiV6MyR7IGxYO7h4fOYwnmkNrZBOthzGsHxQuiDJxG68abd8x6hs+KL77rLhUXZ0DR5+QJ9hhkpVmBTzFX2J9jtR2OhGH9bwCqCAmmX5OjuG1JGfP5sRLz8FI2FCnSETkl9yB+rIcG8z4H6B3QhDaHokGMbb+vkAj9pf74cQKG7C8/P4kZW3EK9ZxApTewC1PkRbb7FKHuVsaZhbPLFN5bZKQsJGUckqZ5NRIHEJQWkTqS2yR2s0iCugxkIjS43ndRL8g2qtVaMojqBDPI9hhZlCtgbAGmebHaz5G3DMxQB93VByB7Nu6MAUH0HPvSoakTzmp0WURTSDKI/PoopAhAr1/Tv9/lvrKO8ibyoFELN5woABasUY3eiWqFIzU3rsMiKWjgpAhPdA7KtasZSII2SJb4P0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Mar 2026 08:50:45.8854 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d6538eca-d655-4770-9b82-08de83391d30 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=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BL6PEPF00022573.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY3PR12MB9655 Hello Dietmar, On 3/16/2026 1:54 PM, Dietmar Eggemann wrote: > Hi Prateek, > > On 16.03.26 04:41, K Prateek Nayak wrote: >> Hello Dietmar, >> >> On 3/16/2026 5:48 AM, Dietmar Eggemann wrote: > > [...] > >> Indeed! "imb_numa_nr" only makes sense when looking at NUMA domains >> and having it assigned to 1 for lower domains is harmless >> (but wasteful indeed). I'm 99% sure we can simply do: >> >> (Only build tested) >> >> diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c >> index 43150591914b..e9068a809dbc 100644 >> --- a/kernel/sched/topology.c >> +++ b/kernel/sched/topology.c >> @@ -2623,9 +2623,6 @@ static void adjust_numa_imbalance(struct sched_domain *sd_llc) >> else >> imb = nr_llcs; >> >> - imb = max(1U, imb); >> - sd_llc->parent->imb_numa_nr = imb; >> - >> /* >> * Set span based on the first NUMA domain. >> * >> @@ -2639,10 +2636,14 @@ static void adjust_numa_imbalance(struct sched_domain *sd_llc) >> while (parent && !(parent->flags & SD_NUMA)) >> parent = parent->parent; >> >> - imb_span = parent ? parent->span_weight : sd_llc->parent->span_weight; >> + /* No NUMA domain to adjust imbalance for! */ >> + if (!parent) >> + return; >> + >> + imb = max(1U, imb); >> + imb_span = parent->span_weight; >> >> /* Update the upper remainder of the topology */ >> - parent = sd_llc->parent; >> while (parent) { >> int factor = max(1U, (parent->span_weight / imb_span)); >> >> --- >> >> If we have NUMA domains, we definitely have NODE and NODE sets neither >> SD_SHARE_LLC, nor SD_NUMA so likely sd->parent is PKG / NODE domain and >> NUMA has to start at sd->parent->parent and it has to break at the first >> SD_NUMA domains. >> >> If it doesn't exist, we don't have any NUMA domains and nothing to worry >> about, and if we do, the final loop will adjust the NUMA imbalance. >> >> Thoughts? Again, this commit was kept 1:1 with the previous loop but we >> can always improve :-) > Ah, I see! > > This would work, IMHO. > > Tested on qemu-system-aarch64 w/ > > -smp 8,sockets=2,clusters=2,cores=2,threads=1 > > Are you aware of a setup in which PKG would survive between MC and > lowest NUMA? On x86, you can have: -smp 8,sockets=2,dies=2,cores=2,threads=1 and each "die" will appear as an MC within the socket so we get NUMA { 0-7 } NODE { 0-3 } { 4-7 } PKG { 0-3 } { 4-7 } MC {0,1} {2,3} {4,5} {6,7} In the above case, NODE is degenerated since it matches with PKG and MC, PKG, NUMA survive at the end. -- Thanks and Regards, Prateek