From: Sudeep Holla <sudeep.holla@arm.com>
To: Atish Patra <atish.patra@wdc.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Jeffrey Hugo <jhugo@codeaurora.org>,
Albert Ou <aou@eecs.berkeley.edu>,
Anup Patel <anup@brainfault.org>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
Catalin Marinas <catalin.marinas@arm.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
Dmitriy Cherkasov <dmitriy@oss-tech.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Ingo Molnar <mingo@kernel.org>,
Jeremy Linton <jeremy.linton@arm.com>,
Johan Hovold <johan@kernel.org>,
"linux-riscv@lists.infradead.org"
<linux-riscv@lists.infradead.org>,
Mark Rutland <mark.rutland@arm.com>,
Morten Rasmussen <morten.rasmussen@arm.com>,
Otto Sabart <ottosabart@seberm.com>,
Palmer Dabbelt <palmer@sifive.com>, Paul Walmsley <paul.walmsl>
Subject: Re: [RFT/RFC PATCH v3 3/5] cpu-topology: Move cpu topology code to common code.
Date: Tue, 16 Apr 2019 14:23:24 +0100 [thread overview]
Message-ID: <20190416132324.GB24669@e107155-lin> (raw)
In-Reply-To: <5c5b720f-414a-706c-3415-642c27baef1f@wdc.com>
On Mon, Apr 15, 2019 at 03:08:45PM -0700, Atish Patra wrote:
> On 4/15/19 8:27 AM, Sudeep Holla wrote:
> > Hi Atish,
> >
> > Thanks again for doing this. Overall changes look good except a couple
> > of minor nit, see below.
> >
> > On Wed, Mar 20, 2019 at 04:48:04PM -0700, Atish Patra wrote:
> > > Both RISC-V & ARM64 are using cpu-map device tree to describe
> > > their cpu topology. It's better to move the relevant code to
> > > a common place instead of duplicate code.
> > >
> > > Signed-off-by: Atish Patra <atish.patra@wdc.com>
> > > Tested-by: Jeffrey Hugo <jhugo@codeaurora.org>
> > > ---
> > > arch/arm64/include/asm/topology.h | 23 ---
> > > arch/arm64/kernel/topology.c | 303 +-----------------------------
> > > drivers/base/arch_topology.c | 298 ++++++++++++++++++++++++++++-
> > > drivers/base/topology.c | 1 +
> > > include/linux/arch_topology.h | 28 +++
> > > 5 files changed, 330 insertions(+), 323 deletions(-)
> > >
> >
> > [...]
> >
> > > diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
> > > index edfcf8d9..6cc6a860 100644
> > > --- a/drivers/base/arch_topology.c
> > > +++ b/drivers/base/arch_topology.c
> > > @@ -6,8 +6,8 @@
> > > * Written by: Juri Lelli, ARM Ltd.
> > > */
> > > -#include <linux/acpi.h>
> > > #include <linux/arch_topology.h>
> > > +#include <linux/acpi.h>
> > > #include <linux/cpu.h>
> > > #include <linux/cpufreq.h>
> > > #include <linux/device.h>
> > > @@ -16,6 +16,11 @@
> > > #include <linux/string.h>
> > > #include <linux/sched/topology.h>
> > > #include <linux/cpuset.h>
> > > +#include <linux/cpumask.h>
> > > +#include <linux/init.h>
> > > +#include <linux/percpu.h>
> > > +#include <linux/sched.h>
> > > +#include <linux/smp.h>
> > > DEFINE_PER_CPU(unsigned long, freq_scale) = SCHED_CAPACITY_SCALE;
> > > @@ -278,3 +283,294 @@ static void parsing_done_workfn(struct work_struct *work)
> > > #else
> > > core_initcall(free_raw_capacity);
> > > #endif
> > > +
> > > +#if defined(CONFIG_ARM64) || defined(CONFIG_RISCV)
> >
> > Why can't the above one be just GENERIC_ARCH_TOPOLOGY ?
> > I may be missing to find it myself, but would like to know.
> >
> GENERIC_ARCH_TOPOLOGY is now used for both RISCV, ARM & ARM64.
> The below functions under this #ifdef have different implementation for ARM
> and ARM64.
>
> parse_dt_topology
> cpu_coregroup_mask
> update_siblings_masks
>
> While we can combine the later two functions and move them to common code as
> well, parse_dt_topology is significantly different.
>
Sure, had a quick glance and indeed they may look different, but won't
it defeat the purpose of this binding consolidation ?
> That's why we need some kind of #ifdef or renaming of parse_dt_topology for
> ARM32 code.
>
I am fine if we want to take this up later to keep the impact minimum.
But cpu_coregroup_mask and update_siblings_masks can and must be unified.
In fact the existing generic version must work on ARM32 too.
> Thanks for the review!!
>
You are welcome.
--
Regards,
Sudeep
next prev parent reply other threads:[~2019-04-16 13:23 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-20 23:48 [RFT/RFC PATCH v3 0/5] Unify CPU topology across ARM & RISC-V Atish Patra
2019-03-20 23:48 ` [RFT/RFC PATCH v3 1/5] Documentation: DT: arm: add support for sockets defining package boundaries Atish Patra
2019-03-20 23:48 ` [RFT/RFC PATCH v3 2/5] dt-binding: cpu-topology: Move cpu-map to a common binding Atish Patra
2019-03-24 21:16 ` Rob Herring
2019-03-20 23:48 ` [RFT/RFC PATCH v3 3/5] cpu-topology: Move cpu topology code to common code Atish Patra
2019-04-15 15:27 ` Sudeep Holla
2019-04-15 22:08 ` Atish Patra
2019-04-16 13:23 ` Sudeep Holla [this message]
2019-04-16 18:54 ` Atish Patra
2019-03-20 23:48 ` [RFT/RFC PATCH v3 4/5] arm: Use common cpu_topology Atish Patra
2019-04-15 15:31 ` Sudeep Holla
2019-04-15 21:16 ` Atish Patra
2019-04-16 13:09 ` Sudeep Holla
2019-04-16 19:04 ` Atish Patra
2019-03-20 23:48 ` [RFT/RFC PATCH v3 5/5] RISC-V: Parse cpu topology during boot Atish Patra
2019-04-10 22:49 ` [RFT/RFC PATCH v3 0/5] Unify CPU topology across ARM & RISC-V Atish Patra
2019-04-12 17:27 ` Sudeep Holla
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=20190416132324.GB24669@e107155-lin \
--to=sudeep.holla@arm.com \
--cc=anup@brainfault.org \
--cc=aou@eecs.berkeley.edu \
--cc=ard.biesheuvel@linaro.org \
--cc=atish.patra@wdc.com \
--cc=catalin.marinas@arm.com \
--cc=devicetree@vger.kernel.org \
--cc=dmitriy@oss-tech.org \
--cc=gregkh@linuxfoundation.org \
--cc=jeremy.linton@arm.com \
--cc=jhugo@codeaurora.org \
--cc=johan@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=mingo@kernel.org \
--cc=morten.rasmussen@arm.com \
--cc=ottosabart@seberm.com \
--cc=palmer@sifive.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