Re: [PATCH v5 0/5] cpufreq: improve frequency invariance support

From: Ionela Voinescu
Date: Thu Sep 03 2020 - 11:01:54 EST


Hi Rafael, Viresh,

Would it be okay for you to apply this series, as the majority of
changes are in cpufreq? For arch_topology and arm64 changes, they have
been reviewed and acked-by Catalin and Sudeep.

Also, please let me know if I should send v6 with Sudeep's Reviewed-by/s
applied.

Thank you,
Ionela.


On Tuesday 01 Sep 2020 at 21:55:44 (+0100), Ionela Voinescu wrote:
> Hi,
>
> v4->v5
> - I've applied Viresh's remaining suggestion and Acked-by/s
> - v4 can be found at [4]
> - v5 is based on linux-next 20200828
>
> Thank you,
> Ionela.
>
> ---
> v3->v4:
> - addressing Viresh's comments on patches 1/5 and 3/5, and
> - with his Acked-by applied for the rest of the patches;
> - v3 can be found at [3], and
> - this is based on linux-next 20200827.
>
> v2->v3
> - v2 can be found at [2]
> - 1/5 was introduced to check input frequencies to
> arch_set_freq_scale() as recommended by Rafael
> - The previous 2/7 was squashed into 1/7 - now 2/5, with additions to
> the changelog as suggested by Rafael.
> - The previous 3/7 (BL_SWITCHER handling) was dropped to be handled
> in a separate patch. This does not change the current functionality.
> - The previous 4/7 - now 3/5 is simplified as suggested by Viresh.
> - 3/5 - cpufreq_supports_freq_invariance() replaces
> cpufreq_sets_freq_scale(). The meaning chosen for
> cpufreq_supports_freq_invariance() is whether it can set the frequency
> scale factor, not whether arch_set_freq_scale() actually does.
> - 4/5 - Change after Catalin's Ack: The changes to
> arch_set_thermal_pressure() were dropped as they were done in a separate
> patch. Therefore this patch now has a subset of the previous changes
> at 5/7
> - 5/5 - Change after Catalin's Ack:
> s/cpufreq_sets_freq_scale/cpufreq_supports_freq_invariance
> - v3 is based on linux-next 20200814
>
>
> v1 -> v2:
> - v1 can be found at [1]
> - No cpufreq flags are introduced
> - Previous patches 2/8 and 3/8 were squashed in this series under 1/7,
> to ensure bisection.
> - 2/7 was introduced as a proposal for Viresh's suggestion to use
> policy->cur in the call to arch_set_freq_scale() and is extended to
> support drivers that implement the target() callback as well
> - Additional commit message changes are added to 1/7 and 2/7, to
> clarify that the definition of arch_set_freq_scale() will filter
> settings of the scale factor, if unwanted
> - 3/7 disables setting of the scale factor for
> CONFIG_BL_SWITCHER, as Dietmar suggested
> - Small change introduced in 4/7 to disable cpufreq-based frequency
> invariance for the users of the default arch_set_freq_scale() call
> which will not actually set a scale factor
> - build issue solved (reported by 0day test)
> - v2 is based on linux-next 20200716
> - all functional tests in v1 were repeated for v2
>
>
> [1] https://lore.kernel.org/lkml/20200701090751.7543-1-ionela.voinescu@xxxxxxx/
> [2] https://lore.kernel.org/lkml/20200722093732.14297-1-ionela.voinescu@xxxxxxx/
> [3] https://lore.kernel.org/lkml/20200824210252.27486-1-ionela.voinescu@xxxxxxx/
> [4] https://lore.kernel.org/lkml/20200828173303.11939-1-ionela.voinescu@xxxxxxx/
>
> Ionela Voinescu (3):
> arch_topology: validate input frequencies to arch_set_freq_scale()
> cpufreq: move invariance setter calls in cpufreq core
> cpufreq: report whether cpufreq supports Frequency Invariance (FI)
>
> Valentin Schneider (2):
> arch_topology, cpufreq: constify arch_* cpumasks
> arch_topology, arm, arm64: define arch_scale_freq_invariant()
>
> arch/arm/include/asm/topology.h | 1 +
> arch/arm64/include/asm/topology.h | 1 +
> arch/arm64/kernel/topology.c | 9 ++++++-
> drivers/base/arch_topology.c | 13 ++++++++--
> drivers/cpufreq/cpufreq-dt.c | 10 +-------
> drivers/cpufreq/cpufreq.c | 33 +++++++++++++++++++++++---
> drivers/cpufreq/qcom-cpufreq-hw.c | 9 +------
> drivers/cpufreq/scmi-cpufreq.c | 12 ++--------
> drivers/cpufreq/scpi-cpufreq.c | 6 +----
> drivers/cpufreq/vexpress-spc-cpufreq.c | 12 ++--------
> include/linux/arch_topology.h | 4 +++-
> include/linux/cpufreq.h | 8 ++++++-
> 12 files changed, 68 insertions(+), 50 deletions(-)
>
>
> base-commit: b36c969764ab12faebb74711c942fa3e6eaf1e96
> --
> 2.17.1
>