From: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
To: Jeremy Linton <jeremy.linton@arm.com>
Cc: linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
sudeep.holla@arm.com, hanjun.guo@linaro.org, rjw@rjwysocki.net,
will.deacon@arm.com, catalin.marinas@arm.com,
gregkh@linuxfoundation.org, viresh.kumar@linaro.org,
mark.rutland@arm.com, linux-kernel@vger.kernel.org,
linux-pm@vger.kernel.org, jhugo@codeaurora.org,
wangxiongfeng2@huawei.com, Jonathan.Zhang@cavium.com,
ahs3@redhat.com, Jayachandran.Nair@cavium.com,
austinwc@codeaurora.org, lenb@kernel.org,
morten.rasmussen@arm.com, dietmar.eggemann@arm.com
Subject: Re: [PATCH v5 7/9] arm64: Topology, rename cluster_id
Date: Wed, 13 Dec 2017 18:02:17 +0000 [thread overview]
Message-ID: <20171213180217.GB4060@red-moon> (raw)
In-Reply-To: <20171201222330.18863-8-jeremy.linton@arm.com>
[+Morten, Dietmar]
$SUBJECT should be:
arm64: topology: rename cluster_id
On Fri, Dec 01, 2017 at 04:23:28PM -0600, Jeremy Linton wrote:
> Lets match the name of the arm64 topology field
> to the kernel macro that uses it.
>
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
> arch/arm64/include/asm/topology.h | 4 ++--
> arch/arm64/kernel/topology.c | 27 ++++++++++++++-------------
> 2 files changed, 16 insertions(+), 15 deletions(-)
>
> diff --git a/arch/arm64/include/asm/topology.h b/arch/arm64/include/asm/topology.h
> index c4f2d50491eb..118136268f66 100644
> --- a/arch/arm64/include/asm/topology.h
> +++ b/arch/arm64/include/asm/topology.h
> @@ -7,14 +7,14 @@
> struct cpu_topology {
> int thread_id;
> int core_id;
> - int cluster_id;
> + int physical_id;
package_id ?
It has been debated before, I know. Should we keep the cluster_id too
(even if it would be 1:1 mapped to package_id - for now) ?
There is also arch/arm to take into account, again, this patch is
just renaming (as it should have named since the beginning) a
topology level but we should consider everything from a legacy
perspective.
Lorenzo
> cpumask_t thread_sibling;
> cpumask_t core_sibling;
> };
>
> extern struct cpu_topology cpu_topology[NR_CPUS];
>
> -#define topology_physical_package_id(cpu) (cpu_topology[cpu].cluster_id)
> +#define topology_physical_package_id(cpu) (cpu_topology[cpu].physical_id)
> #define topology_core_id(cpu) (cpu_topology[cpu].core_id)
> #define topology_core_cpumask(cpu) (&cpu_topology[cpu].core_sibling)
> #define topology_sibling_cpumask(cpu) (&cpu_topology[cpu].thread_sibling)
> diff --git a/arch/arm64/kernel/topology.c b/arch/arm64/kernel/topology.c
> index 8d48b233e6ce..74a8a5173a35 100644
> --- a/arch/arm64/kernel/topology.c
> +++ b/arch/arm64/kernel/topology.c
> @@ -51,7 +51,7 @@ static int __init get_cpu_for_node(struct device_node *node)
> return -1;
> }
>
> -static int __init parse_core(struct device_node *core, int cluster_id,
> +static int __init parse_core(struct device_node *core, int physical_id,
> int core_id)
> {
> char name[10];
> @@ -67,7 +67,7 @@ static int __init parse_core(struct device_node *core, int cluster_id,
> leaf = false;
> cpu = get_cpu_for_node(t);
> if (cpu >= 0) {
> - cpu_topology[cpu].cluster_id = cluster_id;
> + cpu_topology[cpu].physical_id = physical_id;
> cpu_topology[cpu].core_id = core_id;
> cpu_topology[cpu].thread_id = i;
> } else {
> @@ -89,7 +89,7 @@ static int __init parse_core(struct device_node *core, int cluster_id,
> return -EINVAL;
> }
>
> - cpu_topology[cpu].cluster_id = cluster_id;
> + cpu_topology[cpu].physical_id = physical_id;
> cpu_topology[cpu].core_id = core_id;
> } else if (leaf) {
> pr_err("%pOF: Can't get CPU for leaf core\n", core);
> @@ -105,7 +105,7 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> bool leaf = true;
> bool has_cores = false;
> struct device_node *c;
> - static int cluster_id __initdata;
> + static int physical_id __initdata;
> int core_id = 0;
> int i, ret;
>
> @@ -144,7 +144,7 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> }
>
> if (leaf) {
> - ret = parse_core(c, cluster_id, core_id++);
> + ret = parse_core(c, physical_id, core_id++);
> } else {
> pr_err("%pOF: Non-leaf cluster with core %s\n",
> cluster, name);
> @@ -162,7 +162,7 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> pr_warn("%pOF: empty cluster\n", cluster);
>
> if (leaf)
> - cluster_id++;
> + physical_id++;
>
> return 0;
> }
> @@ -198,7 +198,7 @@ static int __init parse_dt_topology(void)
> * only mark cores described in the DT as possible.
> */
> for_each_possible_cpu(cpu)
> - if (cpu_topology[cpu].cluster_id == -1)
> + if (cpu_topology[cpu].physical_id == -1)
> ret = -EINVAL;
>
> out_map:
> @@ -228,7 +228,7 @@ static void update_siblings_masks(unsigned int cpuid)
> for_each_possible_cpu(cpu) {
> cpu_topo = &cpu_topology[cpu];
>
> - if (cpuid_topo->cluster_id != cpu_topo->cluster_id)
> + if (cpuid_topo->physical_id != cpu_topo->physical_id)
> continue;
>
> cpumask_set_cpu(cpuid, &cpu_topo->core_sibling);
> @@ -249,7 +249,7 @@ void store_cpu_topology(unsigned int cpuid)
> struct cpu_topology *cpuid_topo = &cpu_topology[cpuid];
> u64 mpidr;
>
> - if (cpuid_topo->cluster_id != -1)
> + if (cpuid_topo->physical_id != -1)
> goto topology_populated;
>
> mpidr = read_cpuid_mpidr();
> @@ -263,19 +263,19 @@ void store_cpu_topology(unsigned int cpuid)
> /* Multiprocessor system : Multi-threads per core */
> cpuid_topo->thread_id = MPIDR_AFFINITY_LEVEL(mpidr, 0);
> cpuid_topo->core_id = MPIDR_AFFINITY_LEVEL(mpidr, 1);
> - cpuid_topo->cluster_id = MPIDR_AFFINITY_LEVEL(mpidr, 2) |
> + cpuid_topo->physical_id = MPIDR_AFFINITY_LEVEL(mpidr, 2) |
> MPIDR_AFFINITY_LEVEL(mpidr, 3) << 8;
> } else {
> /* Multiprocessor system : Single-thread per core */
> cpuid_topo->thread_id = -1;
> cpuid_topo->core_id = MPIDR_AFFINITY_LEVEL(mpidr, 0);
> - cpuid_topo->cluster_id = MPIDR_AFFINITY_LEVEL(mpidr, 1) |
> + cpuid_topo->physical_id = MPIDR_AFFINITY_LEVEL(mpidr, 1) |
> MPIDR_AFFINITY_LEVEL(mpidr, 2) << 8 |
> MPIDR_AFFINITY_LEVEL(mpidr, 3) << 16;
> }
>
> pr_debug("CPU%u: cluster %d core %d thread %d mpidr %#016llx\n",
> - cpuid, cpuid_topo->cluster_id, cpuid_topo->core_id,
> + cpuid, cpuid_topo->physical_id, cpuid_topo->core_id,
> cpuid_topo->thread_id, mpidr);
>
> topology_populated:
> @@ -291,7 +291,7 @@ static void __init reset_cpu_topology(void)
>
> cpu_topo->thread_id = -1;
> cpu_topo->core_id = 0;
> - cpu_topo->cluster_id = -1;
> + cpu_topo->physical_id = -1;
>
> cpumask_clear(&cpu_topo->core_sibling);
> cpumask_set_cpu(cpu, &cpu_topo->core_sibling);
> @@ -300,6 +300,7 @@ static void __init reset_cpu_topology(void)
> }
> }
>
> +
> void __init init_cpu_topology(void)
> {
> reset_cpu_topology();
> --
> 2.13.5
>
next prev parent reply other threads:[~2017-12-13 18:02 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-01 22:23 [PATCH v5 0/9] Support PPTT for ARM64 Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 1/9] arm64/acpi: Create arch specific cpu to acpi id helper Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 2/9] ACPI/PPTT: Add Processor Properties Topology Table parsing Jeremy Linton
2017-12-12 1:10 ` Rafael J. Wysocki
2017-12-01 22:23 ` [PATCH v5 3/9] ACPI: Enable PPTT support on ARM64 Jeremy Linton
2017-12-13 17:26 ` Lorenzo Pieralisi
2018-01-05 21:58 ` Jeremy Linton
2018-01-05 22:07 ` Rafael J. Wysocki
2017-12-01 22:23 ` [PATCH v5 4/9] drivers: base cacheinfo: Add support for ACPI based firmware tables Jeremy Linton
2017-12-12 1:11 ` Rafael J. Wysocki
2017-12-12 17:03 ` Jeremy Linton
2017-12-12 17:25 ` Rafael J. Wysocki
2017-12-12 22:55 ` Jeremy Linton
2017-12-12 23:02 ` Rafael J. Wysocki
2017-12-12 23:37 ` Jeremy Linton
2017-12-12 23:41 ` Rafael J. Wysocki
2018-01-03 14:21 ` Sudeep Holla
2018-01-04 11:46 ` Sudeep Holla
2017-12-01 22:23 ` [PATCH v5 5/9] arm64: " Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 6/9] ACPI/PPTT: Add topology parsing code Jeremy Linton
2017-12-12 1:12 ` Rafael J. Wysocki
2017-12-12 16:13 ` Jeremy Linton
2017-12-13 17:38 ` Lorenzo Pieralisi
2017-12-13 22:28 ` Rafael J. Wysocki
2017-12-13 23:06 ` Jeremy Linton
2017-12-13 23:09 ` Rafael J. Wysocki
2018-01-03 8:49 ` vkilari
2018-01-03 16:57 ` Jeremy Linton
2018-01-04 6:48 ` vkilari
2018-01-04 17:50 ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 7/9] arm64: Topology, rename cluster_id Jeremy Linton
2017-12-13 18:02 ` Lorenzo Pieralisi [this message]
2017-12-15 16:36 ` Jeremy Linton
2017-12-18 12:42 ` Morten Rasmussen
2017-12-18 15:47 ` Lorenzo Pieralisi
2017-12-19 9:38 ` Morten Rasmussen
2018-01-02 2:29 ` Xiongfeng Wang
2018-01-02 11:30 ` Morten Rasmussen
2018-01-03 14:29 ` Sudeep Holla
2018-01-03 17:32 ` Jeremy Linton
2018-01-03 17:43 ` Sudeep Holla
2018-01-04 3:59 ` Xiongfeng Wang
2018-01-04 18:00 ` Jeremy Linton
2018-01-04 4:14 ` Xiongfeng Wang
2017-12-01 22:23 ` [PATCH v5 8/9] arm64: topology: Enable ACPI/PPTT based CPU topology Jeremy Linton
2017-12-13 18:22 ` Lorenzo Pieralisi
2017-12-15 17:42 ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 9/9] ACPI: Add PPTT to injectable table list Jeremy Linton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171213180217.GB4060@red-moon \
--to=lorenzo.pieralisi@arm.com \
--cc=Jayachandran.Nair@cavium.com \
--cc=Jonathan.Zhang@cavium.com \
--cc=ahs3@redhat.com \
--cc=austinwc@codeaurora.org \
--cc=catalin.marinas@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=gregkh@linuxfoundation.org \
--cc=hanjun.guo@linaro.org \
--cc=jeremy.linton@arm.com \
--cc=jhugo@codeaurora.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=morten.rasmussen@arm.com \
--cc=rjw@rjwysocki.net \
--cc=sudeep.holla@arm.com \
--cc=viresh.kumar@linaro.org \
--cc=wangxiongfeng2@huawei.com \
--cc=will.deacon@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).