Re: [PATCH v2 8/8] arch_topology: Add support to build llc_sibling on DT platforms
From: Sudeep Holla <hidden>
Date: 2022-05-20 14:56:51
Also in:
linux-riscv, lkml
On Fri, May 20, 2022 at 02:33:46PM +0200, Dietmar Eggemann wrote:
On 18/05/2022 11:33, Sudeep Holla wrote:quoted
ACPI PPTT provides cache identifiers and especially the last level cache identifier is used in obtaining last level cache siblings amongst CPUs. While we have the cpu map representing all the CPUs sharing last level cache in the cacheinfo driver, it is populated quite late in the boot while the information is needed to build scheduler domains quite early. On DT platforms we can use the pointer to the last level cache as the firmware identifier for the last level cache and build the cpumap sharing the last level cache based on the same.[...]quoted
diff --git a/include/linux/arch_topology.h b/include/linux/arch_topology.h index 58cbe18d825c..d8a36b0e27c9 100644 --- a/include/linux/arch_topology.h +++ b/include/linux/arch_topology.h@@ -69,6 +69,7 @@ struct cpu_topology { int cluster_id; int package_id; int llc_id; + void *llc_fw_node;Would be nicer if you could set llc_id directly to avoid all this addition sync `llc_id and llc_fw_node` code. ACPI PPTT has this ACPI_PTR_DIFF() macro which IMHO lets it create distinct ids.
Indeed, I initially thought so, but they are 64 bit pointers and choosing one reference is difficult to take some sort of diff while in ACPI it is in a static table and we could use the reference to the top of the table. -- Regards, Sudeep _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel