From: Lukasz Luba <lukasz.luba@arm.com>
To: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: dietmar.eggemann@arm.com, rui.zhang@intel.com,
amit.kucheria@verdurent.com, amit.kachhap@gmail.com,
viresh.kumar@linaro.org, len.brown@intel.com, pavel@ucw.cz,
mhiramat@kernel.org, qyousef@layalina.io, wvw@google.com,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
rafael@kernel.org
Subject: Re: [PATCH v4 04/18] PM: EM: Refactor em_pd_get_efficient_state() to be more flexible
Date: Tue, 24 Oct 2023 09:09:50 +0100 [thread overview]
Message-ID: <b68e15d1-87b0-4a60-8f09-3d8856c16919@arm.com> (raw)
In-Reply-To: <6786c91e-12ce-a9dd-12fe-bc02c6d782b8@linaro.org>
On 10/23/23 18:39, Daniel Lezcano wrote:
> On 25/09/2023 10:11, Lukasz Luba wrote:
>> The Energy Model (EM) is going to support runtime modification. There
>> are going to be 2 EM tables which store information. This patch aims
>> to prepare the code to be generic and use one of the tables. The function
>> will no longer get a pointer to 'struct em_perf_domain' (the EM) but
>> instead a pointer to 'struct em_perf_state' (which is one of the EM's
>> tables).
>>
>> Prepare em_pd_get_efficient_state() for the upcoming changes and
>> make it possible to re-use. Return an index for the best performance
>> state for a given EM table. The function arguments that are introduced
>> should allow to work on different performance state arrays. The caller of
>> em_pd_get_efficient_state() should be able to use the index either
>> on the default or the modifiable EM table.
>>
>> Signed-off-by: Lukasz Luba <lukasz.luba@arm.com>
>> ---
>
> [ ... ]
>
>> @@ -251,7 +253,9 @@ static inline unsigned long em_cpu_energy(struct
>> em_perf_domain *pd,
>> * Find the lowest performance state of the Energy Model above the
>> * requested frequency.
>> */
>> - ps = em_pd_get_efficient_state(pd, freq);
>> + i = em_pd_get_efficient_state(pd->table, pd->nr_perf_states, freq,
>> + pd->flags);
>
> nitpicking but s/i/state/
Here it makes sense, I'll try to use 'state', but if that could be a bit
odd in later patches code, where I have:
ps = &runtime_table->state[i];
than:
'->state[state]'
won't fly. Although, let me check, because I'm going to drop the
2 tables design so some fields might get different names.
>
> Other than that:
>
> Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Thanks!
>
>
>> + ps = &pd->table[i];
>> /*
>> * The capacity of a CPU in the domain at the performance state
>> (ps)
>
next prev parent reply other threads:[~2023-10-24 8:09 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-25 8:11 [PATCH v4 00/18] Introduce runtime modifiable Energy Model Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 01/18] PM: EM: Add missing newline for the message log Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 02/18] PM: EM: Refactor em_cpufreq_update_efficiencies() arguments Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 03/18] PM: EM: Find first CPU online while updating OPP efficiency Lukasz Luba
2023-09-26 18:32 ` Rafael J. Wysocki
2023-09-29 8:32 ` Lukasz Luba
2023-10-23 17:06 ` Daniel Lezcano
2023-10-24 7:50 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 04/18] PM: EM: Refactor em_pd_get_efficient_state() to be more flexible Lukasz Luba
2023-10-23 17:39 ` Daniel Lezcano
2023-10-24 8:09 ` Lukasz Luba [this message]
2023-09-25 8:11 ` [PATCH v4 05/18] PM: EM: Refactor a new function em_compute_costs() Lukasz Luba
2023-09-26 18:39 ` Rafael J. Wysocki
2023-09-29 8:38 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 06/18] PM: EM: Check if the get_cost() callback is present in em_compute_costs() Lukasz Luba
2023-09-26 18:46 ` Rafael J. Wysocki
2023-09-29 8:42 ` Lukasz Luba
2023-10-23 18:23 ` Daniel Lezcano
2023-10-24 8:14 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 07/18] PM: EM: Refactor struct em_perf_domain and add default_table Lukasz Luba
2023-09-26 18:52 ` Rafael J. Wysocki
2023-09-29 8:45 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 08/18] PM: EM: Add update_power() callback for runtime modifications Lukasz Luba
2023-09-26 18:59 ` Rafael J. Wysocki
2023-09-29 9:00 ` Lukasz Luba
2023-09-29 12:18 ` Rafael J. Wysocki
2023-09-25 8:11 ` [PATCH v4 09/18] PM: EM: Introduce runtime modifiable table Lukasz Luba
2023-09-26 19:12 ` Rafael J. Wysocki
2023-09-29 9:16 ` Lukasz Luba
2023-09-29 12:27 ` Rafael J. Wysocki
2023-10-06 8:03 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 10/18] PM: EM: Add RCU mechanism which safely cleans the old data Lukasz Luba
2023-09-26 10:28 ` kernel test robot
2023-09-26 19:26 ` Rafael J. Wysocki
2023-09-29 9:36 ` Lukasz Luba
2023-09-29 12:59 ` Rafael J. Wysocki
2023-10-02 13:44 ` Lukasz Luba
2023-10-06 8:46 ` Lukasz Luba
2023-10-11 16:02 ` Wei Wang
2023-10-11 16:07 ` Rafael J. Wysocki
2023-10-12 13:16 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 11/18] PM: EM: Add runtime update interface to modify EM power Lukasz Luba
2023-09-26 17:21 ` kernel test robot
2023-09-26 19:48 ` Rafael J. Wysocki
2023-09-29 10:00 ` Lukasz Luba
2023-09-29 13:18 ` Rafael J. Wysocki
2023-10-02 14:09 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 12/18] PM: EM: Use runtime modified EM for CPUs energy estimation in EAS Lukasz Luba
2023-09-26 19:54 ` Rafael J. Wysocki
2023-09-29 10:10 ` Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 13/18] Documentation: EM: Update with runtime modification design Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 14/18] PM: EM: Add performance field to struct em_perf_state Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 15/18] PM: EM: Adjust performance with runtime modification callback Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 16/18] PM: EM: Support late CPUs booting and capacity adjustment Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 17/18] PM: EM: Optimize em_cpu_energy() and remove division Lukasz Luba
2023-09-25 8:11 ` [PATCH v4 18/18] Documentation: EM: Update information about performance field Lukasz Luba
2023-09-28 21:56 ` [PATCH v4 00/18] Introduce runtime modifiable Energy Model Qais Yousef
2023-10-03 8:06 ` Lukasz Luba
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=b68e15d1-87b0-4a60-8f09-3d8856c16919@arm.com \
--to=lukasz.luba@arm.com \
--cc=amit.kachhap@gmail.com \
--cc=amit.kucheria@verdurent.com \
--cc=daniel.lezcano@linaro.org \
--cc=dietmar.eggemann@arm.com \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=pavel@ucw.cz \
--cc=qyousef@layalina.io \
--cc=rafael@kernel.org \
--cc=rui.zhang@intel.com \
--cc=viresh.kumar@linaro.org \
--cc=wvw@google.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
all inboxes | Powered by JetHome®