Re: [PATCH 2/2] cpuidle/drivers/menu: Remove get_loadavg in the performance multiplier

From: Peter Zijlstra
Date: Thu Oct 04 2018 - 04:07:46 EST


On Thu, Oct 04, 2018 at 09:42:07AM +0200, Daniel Lezcano wrote:
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index b88a145..5605f03 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -2873,25 +2873,12 @@ unsigned long long nr_context_switches(void)
>
> return sum;
> }
> -/*
> - * Consumers of these two interfaces, like for example the cpufreq menu
> - * governor are using nonsensical data. Boosting frequency for a CPU that has
> - * IO-wait which might not even end up running the task when it does become
> - * runnable.
> - */
>
> unsigned long nr_iowait_cpu(int cpu)

+static

> {
> return atomic_read(&cpu_rq(cpu)->nr_iowait);
> }
>
> -void get_iowait_load(unsigned long *nr_waiters, unsigned long *load)
> -{
> - struct rq *rq = this_rq();
> - *nr_waiters = atomic_read(&rq->nr_iowait);
> - *load = rq->load.weight;
> -}
> -
> /*
> * IO-wait accounting, and how its mostly bollocks (on SMP).
> *

I'm obviously all for this :-)