[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yrm0E3mFHvJ5Nkgt@arm.com>
Date: Mon, 27 Jun 2022 14:43:47 +0100
From: Ionela Voinescu <ionela.voinescu@....com>
To: Sudeep Holla <sudeep.holla@....com>
Cc: linux-kernel@...r.kernel.org, Greg KH <gregkh@...uxfoundation.org>,
Atish Patra <atishp@...shpatra.org>,
Atish Patra <atishp@...osinc.com>,
Vincent Guittot <vincent.guittot@...aro.org>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Qing Wang <wangqing@...o.com>,
Rob Herring <robh+dt@...nel.org>,
"Rafael J . Wysocki" <rafael@...nel.org>,
Pierre Gondois <pierre.gondois@....com>,
linux-arm-kernel@...ts.infradead.org,
linux-riscv@...ts.infradead.org
Subject: Re: [PATCH v4 15/20] arch_topology: Don't set cluster identifier as
physical package identifier
On Tuesday 21 Jun 2022 at 20:20:29 (+0100), Sudeep Holla wrote:
> Currently as we parse the CPU topology from /cpu-map node from the
> device tree, we assign generated cluster count as the physical package
> identifier for each CPU which is wrong.
>
> The device tree bindings for CPU topology supports sockets to infer
> the socket or physical package identifier for a given CPU. Since it is
> fairly new and not support on most of the old and existing systems, we
^^^^^^^
Nit: supported
> can assume all such systems have single socket/physical package.
>
> Fix the physical package identifier to 0 by removing the assignment of
> cluster identifier to the same.
>
> Signed-off-by: Sudeep Holla <sudeep.holla@....com>
Reviewed-by: Ionela Voinescu <ionela.voinescu@....com>
Thanks,
Ionela.
> ---
> drivers/base/arch_topology.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
> index 7a569aefe313..46fa1b70b02b 100644
> --- a/drivers/base/arch_topology.c
> +++ b/drivers/base/arch_topology.c
> @@ -549,7 +549,6 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> bool leaf = true;
> bool has_cores = false;
> struct device_node *c;
> - static int package_id __initdata;
> int core_id = 0;
> int i, ret;
>
> @@ -588,7 +587,7 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> }
>
> if (leaf) {
> - ret = parse_core(c, package_id, core_id++);
> + ret = parse_core(c, 0, core_id++);
> } else {
> pr_err("%pOF: Non-leaf cluster with core %s\n",
> cluster, name);
> @@ -605,9 +604,6 @@ static int __init parse_cluster(struct device_node *cluster, int depth)
> if (leaf && !has_cores)
> pr_warn("%pOF: empty cluster\n", cluster);
>
> - if (leaf)
> - package_id++;
> -
> return 0;
> }
>
> --
> 2.36.1
>
Powered by blists - more mailing lists