From: Ulf Hansson <ulf.hansson@linaro.org>
To: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
Linux PM <linux-pm@vger.kernel.org>,
Stephen Boyd <sboyd@kernel.org>,
linux-arm-msm <linux-arm-msm@vger.kernel.org>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
"Rafael J . Wysocki" <rjw@rjwysocki.net>,
Andy Gross <agross@kernel.org>, Lina Iyer <ilina@codeaurora.org>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
Kevin Hilman <khilman@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Lina Iyer <lina.iyer@linaro.org>,
Sudeep Holla <sudeep.holla@arm.com>,
Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v3 10/13] cpuidle: psci: Prepare to use OS initiated suspend mode via PM domains
Date: Fri, 6 Dec 2019 18:23:57 +0100 [thread overview]
Message-ID: <CAPDyKFraVC8MajxEWUbtR8+ur7MzCv9g81zeP1T4JWs6+2tEVQ@mail.gmail.com> (raw)
In-Reply-To: <20191206151421.GA5288@e121166-lin.cambridge.arm.com>
On Fri, 6 Dec 2019 at 16:14, Lorenzo Pieralisi
<lorenzo.pieralisi@arm.com> wrote:
>
> On Fri, Dec 06, 2019 at 03:26:16PM +0100, Ulf Hansson wrote:
>
> [...]
>
> > > You can merge it as it is but that's how things stand and adding
> > > a comment to the *code* would help understand its logic.
> >
> > Okay, how about adding a comment along the lines of this:
> >
> > "Using the deepest state for the CPU to trigger a potential selection
> > of a shared state for the domain, assumes the domain states are all
> > deeper states".
>
> Just this it should be fine (I trimmed it a bit).
Great, I add that!
>
> > > > So, unless I am missing your point, I think the above code does
> > > > exactly what you want, no?
> > > >
> > > > In regards to the "arbitrary choice" of what cpuidle state to use,
> > > > there are more details about why that is, in the changelog.
> > > >
> > > > >
> > > > > This inizialization though does not belong in here, it is done at driver
> > > > > level, it should not be done in this per-cpu path. IIUC the logic the
> > > > > enter pointer should only be overridden if and only if all cpus managed
> > > > > by the driver have a corresponding device associated.
> > > >
> > > > I think you have overlooked the fact that there are one cpuidle driver
> > > > registered per CPU. The above doesn't make sense to me, sorry.
> > >
> > > You are calling psci_dt_cpu_init_idle() for every possibile cpu.
> > >
> > > Every time psci_dt_attach_cpu() is called, we check dev and override
> > > the idle driver enter method. There is one driver, what I am saying
> > > is that it is not correct to check dev and override the enter pointer
> > > for *every* cpu that we try to attach to a power domain. This must
> > > be done once for all by checking that *all* devices could be attached
> > > to a power domain.
> >
> > Ah, now I think get your point.
> >
> > You want me to re-iterate through all the registered cpuidle drivers,
> > which means one per CPU - and then override the enter callback for
> > each of them, but only if all devices was successfully attached to a
> > PM domain. Is that correct?
> >
> > My only worries with this, is that we have already registered the
> > cpuidle drivers and I don't think it's a good idea to update the enter
> > callbacks, beyond that point.
> >
> > Perhaps another option is to track whether the first CPU gets attached
> > (and then update the enter callback), but after that require all the
> > remaining CPUs to be attached as well - else bail out with an error
> > code, failing to register all the driver instances.
> >
> > What do you think about that?
>
> I was confused - now we have one cpuidle driver per cpu so this
> comment was bogus from this perspective (I was still reasoning
> wit a *single* cpuidle driver across cpus. Apologies).
No worries!
We agreed on the way forward, so I am happy. :-)
>
> Sudeep will follow up on this but please forget this specific
> comment - I was wrong.
Alright, thanks!
Does that also mean I can add your ack for the rest of the patches in
the series (besides the last hotplug patch) or is there any other
issues you want to raise?
Have a nice weekend!
Kind regards
Uffe
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-12-06 17:24 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-27 10:29 [PATCH v3 00/13] cpuidle: psci: Support hierarchical CPU arrangement Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 01/13] cpuidle: psci: Align psci_power_state count with idle state count Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 02/13] dt: psci: Update DT bindings to support hierarchical PSCI states Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 03/13] firmware: psci: Export functions to manage the OSI mode Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 04/13] of: base: Add of_get_cpu_state_node() to get idle states for a CPU node Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 05/13] cpuidle: dt: Support hierarchical CPU idle states Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 06/13] cpuidle: psci: Simplify OF parsing of CPU idle state nodes Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 07/13] cpuidle: psci: Support hierarchical CPU idle states Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 08/13] cpuidle: psci: Add a helper to attach a CPU to its PM domain Ulf Hansson
2019-11-28 14:14 ` Lorenzo Pieralisi
2019-11-28 17:21 ` Ulf Hansson
2019-11-28 18:31 ` Lorenzo Pieralisi
2019-11-28 22:04 ` Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 09/13] cpuidle: psci: Attach CPU devices to their PM domains Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 10/13] cpuidle: psci: Prepare to use OS initiated suspend mode via " Ulf Hansson
2019-12-05 18:35 ` Lorenzo Pieralisi
2019-12-05 20:25 ` Ulf Hansson
2019-12-05 20:38 ` Ulf Hansson
2019-12-06 11:25 ` Lorenzo Pieralisi
2019-12-06 14:26 ` Ulf Hansson
2019-12-06 15:14 ` Lorenzo Pieralisi
2019-12-06 17:23 ` Ulf Hansson [this message]
2019-11-27 10:29 ` [PATCH v3 11/13] cpuidle: psci: Manage runtime PM in the idle path Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 12/13] cpuidle: psci: Add support for PM domains by using genpd Ulf Hansson
2019-11-27 10:29 ` [PATCH v3 13/13] arm64: dts: Convert to the hierarchical CPU topology layout for MSM8916 Ulf Hansson
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=CAPDyKFraVC8MajxEWUbtR8+ur7MzCv9g81zeP1T4JWs6+2tEVQ@mail.gmail.com \
--to=ulf.hansson@linaro.org \
--cc=agross@kernel.org \
--cc=bjorn.andersson@linaro.org \
--cc=daniel.lezcano@linaro.org \
--cc=ilina@codeaurora.org \
--cc=khilman@kernel.org \
--cc=lina.iyer@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=mark.rutland@arm.com \
--cc=rjw@rjwysocki.net \
--cc=robh+dt@kernel.org \
--cc=sboyd@kernel.org \
--cc=sudeep.holla@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).