From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C2FB11E1024 for ; Fri, 10 Jul 2026 04:14:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.49 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783656872; cv=none; b=Y4O9hiGFfWINIPvstIxk38fPg+8ZwvtR53LQB1PeQgtL/4r0qsH7DWYCRkuqEyrckjbKFXs+XQzyqu+XrSf5OJhm2rGcNHv+1NUtL8DQSkp52d2WxHCl9M5yKSiE4/x/Y6neH2T3GX6JFVCfgSiYs/DiqUAvBtYHRHYAB4hAqXY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783656872; c=relaxed/simple; bh=5vBba6Tlr5v4WIAUB5z2gnMH7XYBs+QaYP3uSr/a9zA=; h=From:To:Cc:Subject:In-Reply-To:Date:Message-ID:References; b=HqK4JqXeUVHpKebM9UQoYE5TYcnCseHl2gEaSAQ2nWJ1qtIR6hueqi2tP/DkpYWFrbb65PwQUiytDWY3Ex6D4yFKn6b7jfasLSAkCPpD1fRZqD6gWuxBn3OTFU/63QhI6msf+TSTw3XyY5JuJ69iz8t+w9mNbQ10gNp2KfjZ8Gk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=n65IYLJC; arc=none smtp.client-ip=209.85.216.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="n65IYLJC" Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-3811f512167so694695a91.3 for ; Thu, 09 Jul 2026 21:14:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783656870; x=1784261670; darn=vger.kernel.org; h=references:message-id:date:in-reply-to:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to:content-type; bh=6jxpcS6PTHQj1X2CNIJSbdLIe+j/geIEwLwqXX7rn1c=; b=n65IYLJCAPHr3zvochoUXCrTf122IX0kr6DjO/h+zIvnm1BsEH1We8/+rRu7C4lKoL rHD4MwVJABUZcUE1waaCknBK+rInM58TfUkeEyLN1sfuH2Mfj/Ono+RWDfeSiZVg4hT/ pna2VEUzCw8SFJFiqt3PJxKsz0wQ1UVyRu77pVsqdChIy7Cn8CNDIwbD9RMRkAAdWqp3 etod/McupCAnR3B3H1VpZO6QRtpFTWeQdxaYAuhchzr2m+I/mya/00pD7/W+SJE5WFCn yd+QAL3EJWbsH6HE/chdMOzy9iDmLHGM80tPZ6XPd6ob4NvpA91XGgewx+reYLU8MGos Fl8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783656870; x=1784261670; h=references:message-id:date:in-reply-to:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=6jxpcS6PTHQj1X2CNIJSbdLIe+j/geIEwLwqXX7rn1c=; b=AmrUiOyHbweKiSd76HTtSfQ6oDu8XAcXoCiYZVzVmUild655UCIXozLY2v3/qDug9O 5pjOp4lgJ0s9h9SRrHRsN26MsefuRTZCnaentkEGTP2HySITDpWlk/q+xE6gQ1OroDL4 icMjVVIGtBPjfPrKbYozzilcHVdz72bpJcQ6IiBy53d6KLx41pGpYNpgL66eJPZI5fQm jVIKXUlp7HH6amdhjj2/0Rk5adS8hecBWZRorQcbBHxlnFgMCD1b52umSW6ogiXtfvzJ dkA0ejGrBzRPq7YLtoS/kAyAZDEp0j+khBqz08euR9p6lZ+ZlEIfosXQOAzPizpRxS8t vQ/A== X-Forwarded-Encrypted: i=1; AHgh+RrGQzcT0J1MCmR50BVvkc9gVKhSTqwwZVeY6j8vnmoH4WuA1bbVGxF2NbypUpx2NHxdLKmDRtrepFm1BpI=@vger.kernel.org X-Gm-Message-State: AOJu0Yz/oUIC4vcEL1rhPHcfx2pcfJGu6lnZnpI1v25wLfNwOJc/1p9U D/su+VzWzoAYbJr2B6YuAKLSveJdMEANsoe8bVeGRk4K9pVLNlqkrYXdKRF2cLH+ X-Gm-Gg: AfdE7cl42xS5GunvoMBPmjYkRW7/kvVL20zGR4Yvt5SVopvGTKtRjJVAFPHPNizlFXL JQ6lGp007W681BfOKhEfN+AADnZhlH7L65+t8q6NT2CYjeJVq8Ozs8qdvMudETX1oaUJLLL3xx2 CpGTgbNQW1EVxB54PjJcC5Y30aCcSYdmQnDAImMeGtE6oDs4B4vOgVJoyKeCR5PNOPNXU4I7YgR lSu+pWQOVf5mzNY1009cmQVbEhBP6MlMB/HZG0uBXHWcCOJxl+ffyLxDVCY/j4zQAjr9kbnpF+s xMztxFca2V4cDeevNCML0pUXc2Hi/69eXmLJNRWFVQfN1ciXWz8GHbGBx7PN85B3yHFvSg+miNc ZySrBmFVL08fLqceNfgIWsBF8pjVurG5/xS2RZpTT3yXGRpsaVOBRX98zFPNQAs+QYHtvI/eobK uLwtpbthWkcFo= X-Received: by 2002:a17:90b:2701:b0:38d:a8be:a592 with SMTP id 98e67ed59e1d1-38da8bea6c9mr198654a91.19.1783656869990; Thu, 09 Jul 2026 21:14:29 -0700 (PDT) Received: from pve-server ([49.205.216.49]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311838c9235sm29776466eec.21.2026.07.09.21.14.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Jul 2026 21:14:29 -0700 (PDT) From: Ritesh Harjani (IBM) To: Srikar Dronamraju , linuxppc-dev , Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Naveen N Rao Cc: skiboot@lists.ozlabs.org, arbab@linux.ibm.com, mahesh@linux.ibm.com, chleroy@kernel.org, Srikar Dronamraju , linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 2/3] powerpc/numa: Allow cpu_to_coregroup_id without PPC_SPLPAR In-Reply-To: <20260605055242.1757485-7-srikar@linux.ibm.com> Date: Fri, 10 Jul 2026 09:34:55 +0530 Message-ID: References: <20260605055242.1757485-5-srikar@linux.ibm.com> <20260605055242.1757485-7-srikar@linux.ibm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Srikar Dronamraju writes: > Make cpu_to_coregroup_id() available outside PPC_SPLPAR so it can be > used by platforms that do not rely on the SPLPAR-specific VPHN path. > > Keep the existing fallback behavior by returning the core ID when > coregroup information is unavailable. > Looks like this mainly brings the cpu_to_coregroup_id() outside of CONFIG_PPC_SPLPAR gate. > Signed-off-by: Srikar Dronamraju > --- > Changelog from v1: > - Handle comments from Christophe Leroy; Remove extern key word in > declaration > > arch/powerpc/include/asm/topology.h | 15 +++++++-------- > arch/powerpc/mm/numa.c | 22 ++++++++++++++++------ > 2 files changed, 23 insertions(+), 14 deletions(-) > > diff --git a/arch/powerpc/include/asm/topology.h b/arch/powerpc/include/asm/topology.h > index 66ed5fe1b718..385715f1ad56 100644 > --- a/arch/powerpc/include/asm/topology.h > +++ b/arch/powerpc/include/asm/topology.h > @@ -71,6 +71,7 @@ extern void map_cpu_to_node(int cpu, int node); > extern void unmap_cpu_from_node(unsigned long cpu); > #endif /* CONFIG_HOTPLUG_CPU */ > > +int cpu_to_coregroup_id(int cpu); > #else > > static inline int early_cpu_to_node(int cpu) { return 0; } > @@ -107,14 +108,6 @@ static inline void map_cpu_to_node(int cpu, int node) {} > static inline void unmap_cpu_from_node(unsigned long cpu) {} > #endif /* CONFIG_HOTPLUG_CPU */ > #endif /* CONFIG_SMP */ > - > -#endif /* CONFIG_NUMA */ > - > -#if defined(CONFIG_NUMA) && defined(CONFIG_PPC_SPLPAR) > -void find_and_update_cpu_nid(int cpu); > -extern int cpu_to_coregroup_id(int cpu); > -#else > -static inline void find_and_update_cpu_nid(int cpu) {} > static inline int cpu_to_coregroup_id(int cpu) > { > #ifdef CONFIG_SMP > @@ -124,6 +117,12 @@ static inline int cpu_to_coregroup_id(int cpu) > #endif > } > > +#endif /* CONFIG_NUMA */ > + > +#if defined(CONFIG_NUMA) && defined(CONFIG_PPC_SPLPAR) > +void find_and_update_cpu_nid(int cpu); > +#else > +static inline void find_and_update_cpu_nid(int cpu) {} > #endif /* CONFIG_NUMA && CONFIG_PPC_SPLPAR */ > > #include > diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c > index c44a80d8fc11..9aa71eb7e96b 100644 > --- a/arch/powerpc/mm/numa.c > +++ b/arch/powerpc/mm/numa.c > @@ -1428,6 +1428,21 @@ void find_and_update_cpu_nid(int cpu) > pr_debug("%s:%d cpu %d nid %d\n", __func__, __LINE__, cpu, new_nid); > } > > +static int topology_update_init(void) > +{ > + topology_inited = 1; > + return 0; > +} > +device_initcall(topology_update_init); > + > +#else > +static long vphn_get_associativity(unsigned long cpu, > + __be32 *associativity) > +{ > + return -1; > +} > +#endif /* CONFIG_PPC_SPLPAR */ > + > int cpu_to_coregroup_id(int cpu) > { > __be32 associativity[VPHN_ASSOC_BUFSIZE] = {0}; > @@ -1453,10 +1468,5 @@ int cpu_to_coregroup_id(int cpu) > return cpu_to_core_id(cpu); > } > > -static int topology_update_init(void) > -{ > - topology_inited = 1; > - return 0; > + return coregroup_id; > } These above two lines seems to be out of any function scope. So applying only patch-1 & patch-2 will give a compile error. This needs fixing. -ritesh > -device_initcall(topology_update_init); > -#endif /* CONFIG_PPC_SPLPAR */ > -- > 2.43.0