From: Quentin Perret <quentin.perret@arm.com>
To: Chandra Sekhar Lingutla <clingutla@codeaurora.org>
Cc: catalin.marinas@arm.com, will.deacon@arm.com,
Jeremy Linton <jeremy.linton@arm.com>,
dietmar.eggemann@arm.com, Sudeep Holla <sudeep.holla@arm.com>,
Morten Rasmussen <morten.rasmussen@arm.com>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] arch_topology: Update user supplied capacity to possible cpus in cluster
Date: Tue, 5 Mar 2019 16:12:03 +0000 [thread overview]
Message-ID: <20190305161201.rccb6e43wv7ugyxs@queper01-lin> (raw)
In-Reply-To: <f5c3765a-f8a9-3b35-2c42-51430e562f5f@codeaurora.org>
On Tuesday 05 Mar 2019 at 21:23:24 (+0530), Chandra Sekhar Lingutla wrote:
>
>
> On 3/5/2019 5:06 PM, Sudeep Holla wrote:
> > On Tue, Mar 05, 2019 at 11:29:55AM +0000, Quentin Perret wrote:
> >> On Tuesday 05 Mar 2019 at 11:13:21 (+0000), Sudeep Holla wrote:
> >> [...]
> >>> While I like the idea, I am afraid that linking this to cpufreq policy
> >>> may not be good. How will we deal with it on systems without CPUfreq ?
> >>
> >> Maybe something like this ?
> >>
> >> policy = cpufreq_cpu_get(cpu);
> >> if (policy) {
> >> for_each_cpu(i, policy->related_cpus) {
> >> /* Update capacity for @i*/
> >> }
> >> cpufreq_cpu_put(policy);
> >> } else {
> >> /* Update capacity for @cpu*/
> >> }
> >>
> >> I think it's OK to assume per-cpu capacities w/o CPUFreq. The only
> >> case where it makes sense to 'bind' the capacity of several CPUs
> >> together is when they're part of the same perf domain, I think. If you
> >> don't know what the perf domains are, then there's nothing sensible you
> >> can do.
> >>
> >
> > Makes sense.
> >
> >> And for the dependency, a large part of the arch_topology driver is
> >> already dependent on CPUFreq -- it registers a CPUFreq notifier on boot
> >> to re-scale the CPU capacities depending on the max freq of the various
> >> policies and so on. So the dependency is already there somehow.
> >>
> >
> > Sorry when I mentioned dependency, I meant absence of it needs to be
> > dealt with. Your suggestion looks good.
> >
> >> [...]
> >>
> >>> I think if there are no valid users of this, we *must* remove it. As I
> >>> have pointed out in past, giving user such access will need platform
> >>> knowledge. Though it's debatable topic, firmware providing this
> >>> information is the only correct solution IMO.
> >>
> >> Yeah, if nobody is using it then maybe we can just remove it. Or at
> >> least we can give it a go and if somebody complains then we can 'fix' it
> >> with something like my snippet above :-)
> >>
> >
> > Happy to Ack code removing it ;). The argument that it can't be provided
> > by firmware is no longer valid. We already have some dependency on DVFS
> > data from the firmware for this to be functional correctly.
> >
> If at all nobody uses it, making it as read-only (under debugfs) would be good ?
I'd say keep the sysfs, but make it RO. I'm aware of a few tools reading
from that sysfs node so let's not break them. (None of these tools
_write_ in there, though.)
> or else we are ok to update patch with related_cpus ?
And that we can keep as a backup solution if the above fails.
Please also don't forget to CC Greg KH who maintains that file.
Thanks,
Quentin
_______________________________________________
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-03-05 16:12 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-28 11:53 [PATCH] arch_topology: Update user supplied capacity to possible cpus in cluster Lingutla Chandrasekhar
2019-02-28 12:19 ` Sudeep Holla
2019-02-28 14:38 ` Chandra Sekhar Lingutla
2019-02-28 15:25 ` Sudeep Holla
2019-03-02 13:30 ` Chandra Sekhar Lingutla
2019-03-04 18:21 ` Sudeep Holla
2019-03-05 9:23 ` Quentin Perret
2019-03-05 11:13 ` Sudeep Holla
2019-03-05 11:29 ` Quentin Perret
2019-03-05 11:36 ` Sudeep Holla
2019-03-05 15:53 ` Chandra Sekhar Lingutla
2019-03-05 16:12 ` Quentin Perret [this message]
2019-03-05 16:54 ` Sudeep Holla
2019-03-06 15:22 ` Morten Rasmussen
2019-03-06 15:27 ` [PATCH v1] arch_topology: Make cpu_capacity sysfs node as ready-only Lingutla Chandrasekhar
2019-03-06 15:27 ` Lingutla Chandrasekhar
2019-03-07 7:28 ` Juri Lelli
2019-03-07 7:28 ` Juri Lelli
2019-03-07 9:31 ` Quentin Perret
2019-03-07 9:31 ` Quentin Perret
2019-03-07 9:57 ` Juri Lelli
2019-03-07 9:57 ` Juri Lelli
2019-03-07 12:14 ` Quentin Perret
2019-03-07 12:14 ` Quentin Perret
2019-03-07 15:04 ` Sudeep Holla
2019-03-07 15:04 ` Sudeep Holla
2019-03-07 15:19 ` Sudeep Holla
2019-03-07 15:19 ` Sudeep Holla
2019-03-08 11:45 ` Dietmar Eggemann
2019-03-08 11:45 ` Dietmar Eggemann
2019-03-08 12:38 ` [PATCH v2] " Lingutla Chandrasekhar
2019-03-08 12:38 ` Lingutla Chandrasekhar
2019-03-27 10:56 ` Quentin Perret
2019-03-27 10:56 ` Quentin Perret
2019-03-06 9:48 ` [PATCH] arch_topology: Update user supplied capacity to possible cpus in cluster Dietmar Eggemann
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=20190305161201.rccb6e43wv7ugyxs@queper01-lin \
--to=quentin.perret@arm.com \
--cc=catalin.marinas@arm.com \
--cc=clingutla@codeaurora.org \
--cc=dietmar.eggemann@arm.com \
--cc=jeremy.linton@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=morten.rasmussen@arm.com \
--cc=sudeep.holla@arm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.