Message ID | 20220302180913.13229-2-ionela.voinescu@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arch_topology, ACPI: populate cpu capacity from CPPC | expand |
On Wed, Mar 2, 2022 at 7:10 PM Ionela Voinescu <ionela.voinescu@arm.com> wrote: > > init_freq_invariance_cppc() was called in acpi_cppc_processor_probe(), > after CPU performance information and controls were populated from the > per-cpu _CPC objects. > > But these _CPC objects provide information that helps with both CPU > (u-arch) and frequency invariance. Therefore, change the function name > to a more generic one, while adding the arch_ prefix, as this function > is expected to be defined differently by different architectures. > > Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com> > Tested-by: Valentin Schneider <valentin.schneider@arm.com> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: Giovanni Gherdovich <ggherdovich@suse.cz> > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> and who's expected to pick this up? > --- > arch/x86/include/asm/topology.h | 2 +- > drivers/acpi/cppc_acpi.c | 6 +++--- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h > index 2f0b6be8eaab..5ec70f186775 100644 > --- a/arch/x86/include/asm/topology.h > +++ b/arch/x86/include/asm/topology.h > @@ -223,7 +223,7 @@ static inline void arch_set_max_freq_ratio(bool turbo_disabled) > > #if defined(CONFIG_ACPI_CPPC_LIB) && defined(CONFIG_SMP) > void init_freq_invariance_cppc(void); > -#define init_freq_invariance_cppc init_freq_invariance_cppc > +#define arch_init_invariance_cppc init_freq_invariance_cppc > #endif > > #endif /* _ASM_X86_TOPOLOGY_H */ > diff --git a/drivers/acpi/cppc_acpi.c b/drivers/acpi/cppc_acpi.c > index 866560cbb082..bfd142ab4e07 100644 > --- a/drivers/acpi/cppc_acpi.c > +++ b/drivers/acpi/cppc_acpi.c > @@ -633,8 +633,8 @@ static bool is_cppc_supported(int revision, int num_ent) > * ) > */ > > -#ifndef init_freq_invariance_cppc > -static inline void init_freq_invariance_cppc(void) { } > +#ifndef arch_init_invariance_cppc > +static inline void arch_init_invariance_cppc(void) { } > #endif > > /** > @@ -816,7 +816,7 @@ int acpi_cppc_processor_probe(struct acpi_processor *pr) > goto out_free; > } > > - init_freq_invariance_cppc(); > + arch_init_invariance_cppc(); > > kfree(output.pointer); > return 0; > -- > 2.25.1 >
On Tue, Mar 8, 2022 at 7:05 PM Rafael J. Wysocki <rafael@kernel.org> wrote: > > On Wed, Mar 2, 2022 at 7:10 PM Ionela Voinescu <ionela.voinescu@arm.com> wrote: > > > > init_freq_invariance_cppc() was called in acpi_cppc_processor_probe(), > > after CPU performance information and controls were populated from the > > per-cpu _CPC objects. > > > > But these _CPC objects provide information that helps with both CPU > > (u-arch) and frequency invariance. Therefore, change the function name > > to a more generic one, while adding the arch_ prefix, as this function > > is expected to be defined differently by different architectures. > > > > Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com> > > Tested-by: Valentin Schneider <valentin.schneider@arm.com> > > Cc: Thomas Gleixner <tglx@linutronix.de> > > Cc: Ingo Molnar <mingo@redhat.com> > > Cc: Giovanni Gherdovich <ggherdovich@suse.cz> > > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> > > Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> That said it will conflict with this series from Rui: https://lore.kernel.org/linux-acpi/20220214101450.356047-1-ray.huang@amd.com/ applied by me a while ago. Maybe consider rebasing when this gets to linux-next -> > and who's expected to pick this up? -> and then I guess I can pick it up if everybody agrees. > > --- > > arch/x86/include/asm/topology.h | 2 +- > > drivers/acpi/cppc_acpi.c | 6 +++--- > > 2 files changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h > > index 2f0b6be8eaab..5ec70f186775 100644 > > --- a/arch/x86/include/asm/topology.h > > +++ b/arch/x86/include/asm/topology.h > > @@ -223,7 +223,7 @@ static inline void arch_set_max_freq_ratio(bool turbo_disabled) > > > > #if defined(CONFIG_ACPI_CPPC_LIB) && defined(CONFIG_SMP) > > void init_freq_invariance_cppc(void); > > -#define init_freq_invariance_cppc init_freq_invariance_cppc > > +#define arch_init_invariance_cppc init_freq_invariance_cppc > > #endif > > > > #endif /* _ASM_X86_TOPOLOGY_H */ > > diff --git a/drivers/acpi/cppc_acpi.c b/drivers/acpi/cppc_acpi.c > > index 866560cbb082..bfd142ab4e07 100644 > > --- a/drivers/acpi/cppc_acpi.c > > +++ b/drivers/acpi/cppc_acpi.c > > @@ -633,8 +633,8 @@ static bool is_cppc_supported(int revision, int num_ent) > > * ) > > */ > > > > -#ifndef init_freq_invariance_cppc > > -static inline void init_freq_invariance_cppc(void) { } > > +#ifndef arch_init_invariance_cppc > > +static inline void arch_init_invariance_cppc(void) { } > > #endif > > > > /** > > @@ -816,7 +816,7 @@ int acpi_cppc_processor_probe(struct acpi_processor *pr) > > goto out_free; > > } > > > > - init_freq_invariance_cppc(); > > + arch_init_invariance_cppc(); > > > > kfree(output.pointer); > > return 0; > > -- > > 2.25.1 > >
On Tuesday 08 Mar 2022 at 19:22:10 (+0100), Rafael J. Wysocki wrote: > On Tue, Mar 8, 2022 at 7:05 PM Rafael J. Wysocki <rafael@kernel.org> wrote: > > > > On Wed, Mar 2, 2022 at 7:10 PM Ionela Voinescu <ionela.voinescu@arm.com> wrote: > > > > > > init_freq_invariance_cppc() was called in acpi_cppc_processor_probe(), > > > after CPU performance information and controls were populated from the > > > per-cpu _CPC objects. > > > > > > But these _CPC objects provide information that helps with both CPU > > > (u-arch) and frequency invariance. Therefore, change the function name > > > to a more generic one, while adding the arch_ prefix, as this function > > > is expected to be defined differently by different architectures. > > > > > > Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com> > > > Tested-by: Valentin Schneider <valentin.schneider@arm.com> > > > Cc: Thomas Gleixner <tglx@linutronix.de> > > > Cc: Ingo Molnar <mingo@redhat.com> > > > Cc: Giovanni Gherdovich <ggherdovich@suse.cz> > > > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> > > > > Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > > That said it will conflict with this series from Rui: > > https://lore.kernel.org/linux-acpi/20220214101450.356047-1-ray.huang@amd.com/ > > applied by me a while ago. > > Maybe consider rebasing when this gets to linux-next -> Will do that! > > > and who's expected to pick this up? > > -> and then I guess I can pick it up if everybody agrees. Many thanks, Rafael! > > > > --- > > > arch/x86/include/asm/topology.h | 2 +- > > > drivers/acpi/cppc_acpi.c | 6 +++--- > > > 2 files changed, 4 insertions(+), 4 deletions(-) > > > > > > diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h > > > index 2f0b6be8eaab..5ec70f186775 100644 > > > --- a/arch/x86/include/asm/topology.h > > > +++ b/arch/x86/include/asm/topology.h > > > @@ -223,7 +223,7 @@ static inline void arch_set_max_freq_ratio(bool turbo_disabled) > > > > > > #if defined(CONFIG_ACPI_CPPC_LIB) && defined(CONFIG_SMP) > > > void init_freq_invariance_cppc(void); > > > -#define init_freq_invariance_cppc init_freq_invariance_cppc > > > +#define arch_init_invariance_cppc init_freq_invariance_cppc > > > #endif > > > > > > #endif /* _ASM_X86_TOPOLOGY_H */ > > > diff --git a/drivers/acpi/cppc_acpi.c b/drivers/acpi/cppc_acpi.c > > > index 866560cbb082..bfd142ab4e07 100644 > > > --- a/drivers/acpi/cppc_acpi.c > > > +++ b/drivers/acpi/cppc_acpi.c > > > @@ -633,8 +633,8 @@ static bool is_cppc_supported(int revision, int num_ent) > > > * ) > > > */ > > > > > > -#ifndef init_freq_invariance_cppc > > > -static inline void init_freq_invariance_cppc(void) { } > > > +#ifndef arch_init_invariance_cppc > > > +static inline void arch_init_invariance_cppc(void) { } > > > #endif > > > > > > /** > > > @@ -816,7 +816,7 @@ int acpi_cppc_processor_probe(struct acpi_processor *pr) > > > goto out_free; > > > } > > > > > > - init_freq_invariance_cppc(); > > > + arch_init_invariance_cppc(); > > > > > > kfree(output.pointer); > > > return 0; > > > -- > > > 2.25.1 > > >
diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h index 2f0b6be8eaab..5ec70f186775 100644 --- a/arch/x86/include/asm/topology.h +++ b/arch/x86/include/asm/topology.h @@ -223,7 +223,7 @@ static inline void arch_set_max_freq_ratio(bool turbo_disabled) #if defined(CONFIG_ACPI_CPPC_LIB) && defined(CONFIG_SMP) void init_freq_invariance_cppc(void); -#define init_freq_invariance_cppc init_freq_invariance_cppc +#define arch_init_invariance_cppc init_freq_invariance_cppc #endif #endif /* _ASM_X86_TOPOLOGY_H */ diff --git a/drivers/acpi/cppc_acpi.c b/drivers/acpi/cppc_acpi.c index 866560cbb082..bfd142ab4e07 100644 --- a/drivers/acpi/cppc_acpi.c +++ b/drivers/acpi/cppc_acpi.c @@ -633,8 +633,8 @@ static bool is_cppc_supported(int revision, int num_ent) * ) */ -#ifndef init_freq_invariance_cppc -static inline void init_freq_invariance_cppc(void) { } +#ifndef arch_init_invariance_cppc +static inline void arch_init_invariance_cppc(void) { } #endif /** @@ -816,7 +816,7 @@ int acpi_cppc_processor_probe(struct acpi_processor *pr) goto out_free; } - init_freq_invariance_cppc(); + arch_init_invariance_cppc(); kfree(output.pointer); return 0;