Re: [RFC 8/9] intel_pstate: ignore scheduler cpufreq callbacks on remote CPUs
From: Rafael J. Wysocki
Date: Wed Mar 29 2017 - 18:21:21 EST
On Thursday, March 09, 2017 05:15:18 PM Viresh Kumar wrote:
> From: Steve Muckle <smuckle.linux@xxxxxxxxx>
>
> In preparation for the scheduler cpufreq callback happening on remote
> CPUs, check for this case in intel_pstate which currently requires the
> callback run on the local CPU. Such callbacks are ignored for now.
>
> Signed-off-by: Steve Muckle <smuckle.linux@xxxxxxxxx>
> Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
> ---
> drivers/cpufreq/intel_pstate.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
> index 3d37219a0dd7..bd60f1cd7ea6 100644
> --- a/drivers/cpufreq/intel_pstate.c
> +++ b/drivers/cpufreq/intel_pstate.c
> @@ -1930,6 +1930,9 @@ static void intel_pstate_update_util(struct update_util_data *data, u64 time,
> struct cpudata *cpu = container_of(data, struct cpudata, update_util);
> u64 delta_ns;
>
> + if (smp_processor_id() != data->cpu)
> + return;
> +
> if (pstate_funcs.get_target_pstate == get_target_pstate_use_cpu_load) {
> if (flags & SCHED_CPUFREQ_IOWAIT) {
> cpu->iowait_boost = int_tofp(1);
>
This would need to be updated on top of some intel_pstate changes in the queue.
Thanks,
Rafael