Re: [PATCH v3 0/3] Add support for AArch64 AMUv1-based arch_freq_get_on_cpu

From: Beata Michalska
Date: Wed Mar 13 2024 - 19:51:00 EST


On Wed, Mar 13, 2024 at 12:27:53PM +0000, Ionela Voinescu wrote:
> Hey,
>
> On Tuesday 12 Mar 2024 at 08:34:28 (+0000), Beata Michalska wrote:
> > Introducing arm64 specific version of arch_freq_get_on_cpu, cashing on
> > existing implementation for FIE and AMUv1 support: the frequency scale
> > factor, updated on each sched tick, serves as a base for retrieving
> > the frequency for a given CPU, representing an average frequency
> > reported between the ticks - thus its accuracy is limited.
> >
> > The changes have been rather lightly (due to some limitations) tested on
> > an FVP model.
> >
> > Relevant discussions:
> > [1] https://lore.kernel.org/all/20240229162520.970986-1-vanshikonda@xxxxxxxxxxxxxxxxxxxxxx/
> > [2] https://lore.kernel.org/all/7eozim2xnepacnnkzxlbx34hib4otycnbn4dqymfziqou5lw5u@5xzpv3t7sxo3/
> > [3] https://lore.kernel.org/all/20231212072617.14756-1-lihuisong@xxxxxxxxxx/
> > [4] https://lore.kernel.org/lkml/ZIHpd6unkOtYVEqP@xxxxxxxxxxxxxxxxxxxxxxxxx/T/#m4e74cb5a0aaa353c60fedc6cfb95ab7a6e381e3c
> >
> > v3:
> > - dropping changes to cpufreq_verify_current_freq
> > - pulling in changes from Ionela initializing capacity_freq_ref to 0
> > (thanks for that!) and applying suggestions made by her during last review:
> > - switching to arch_scale_freq_capacity and arch_scale_freq_ref when
> > reversing freq scale factor computation
> > - swapping shift with multiplication
> > - adding time limit for considering last scale update as valid
> > - updating frequency scale factor upon entering idle
> >
> > v2:
> > - Splitting the patches
> > - Adding comment for full dyntick mode
> > - Plugging arch_freq_get_on_cpu into cpufreq_verify_current_freq instead
> > of in show_cpuinfo_cur_freq to allow the framework to stay more in sync
> > with potential freq changes
> >
> > Beata Michalska (2):
> > arm64: Provide an AMU-based version of arch_freq_get_on_cpu
> > arm64: Update AMU-based frequency scale factor on entering idle
> >
> > Ionela Voinescu (1):
> > arch_topology: init capacity_freq_ref to 0
> >
>
> Should there have been a patch that adds a call to
> arch_freq_get_on_cpu() from show_cpuinfo_cur_freq() as well?
>
> My understanding from this [1] thread and others referenced there is
> that was something we wanted.
>
Right, so I must have missunderstood that, as the way I did read it was that
it is acceptable to keep things as they are wrt cpufreq sysfs entries.

---
BR
Beata
> [1] https://lore.kernel.org/lkml/2cfbc633-1e94-d741-2337-e1b0cf48b81b@xxxxxxxxxx/
>
> Thanks,
> Ionela.
>
>
> > arch/arm64/kernel/topology.c | 116 +++++++++++++++++++++++++++++++----
> > drivers/base/arch_topology.c | 8 ++-
> > 2 files changed, 110 insertions(+), 14 deletions(-)
> >
> > --
> > 2.25.1
> >