Re: [PATCH v2 3/3] intel_pstate: Declare pid_params/pstate_funcs/hwp_active __read_mostly
From: Srinivas Pandruvada
Date: Mon Jun 27 2016 - 13:28:32 EST
On Mon, 2016-06-27 at 18:07 +0800, Jisheng Zhang wrote:
> pid_params is written once by copy_pid_params() during
> initialization,
> and thereafter is mostly read by hot path intel_pstate_update_util().
> The read of pid_params gets more after commit a4675fbc4a7a ("cpufreq:
> intel_pstate: Replace timers with utilization update callbacks")
>
> pstate_funcs is written once by copy_cpu_funcs() during
> initialization,
> and thereafter is mostly read by hot path intel_pstate_update_util()
>
> hwp_active is written to once during initialization and thereafter is
> mostly read by hot path intel_pstate_update_util().
>
> The fact that they are mostly read and not written to makes them
> candidates for __read_mostly declarations.
>
> Signed-off-by: Jisheng Zhang <jszhang@xxxxxxxxxxx>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>
> ---
> Âdrivers/cpufreq/intel_pstate.c | 6 +++---
> Â1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/cpufreq/intel_pstate.c
> b/drivers/cpufreq/intel_pstate.c
> index 861bcba..2eda50d 100644
> --- a/drivers/cpufreq/intel_pstate.c
> +++ b/drivers/cpufreq/intel_pstate.c
> @@ -281,9 +281,9 @@ struct cpu_defaults {
> Âstatic inline int32_t get_target_pstate_use_performance(struct
> cpudata *cpu);
> Âstatic inline int32_t get_target_pstate_use_cpu_load(struct cpudata
> *cpu);
> Â
> -static struct pstate_adjust_policy pid_params;
> -static struct pstate_funcs pstate_funcs;
> -static int hwp_active;
> +static struct pstate_adjust_policy pid_params __read_mostly;
> +static struct pstate_funcs pstate_funcs __read_mostly;
> +static int hwp_active __read_mostly;
> Â
> Â#ifdef CONFIG_ACPI
> Âstatic bool acpi_ppc;