[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160315212520.GF6344@twins.programming.kicks-ass.net>
Date: Tue, 15 Mar 2016 22:25:20 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Michael Turquette <mturquette@...libre.com>
Cc: rjw@...ysocki.net, linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org, Juri.Lelli@....com,
steve.muckle@...aro.org, morten.rasmussen@....com,
dietmar.eggemann@....com, vincent.guittot@...aro.org,
Michael Turquette <mturquette+renesas@...libre.com>
Subject: Re: [PATCH 5/8] sched/cpufreq: pass sched class into
cpufreq_update_util
On Sun, Mar 13, 2016 at 10:22:09PM -0700, Michael Turquette wrote:
> +++ b/include/linux/sched.h
> @@ -2362,15 +2362,25 @@ extern u64 scheduler_tick_max_deferment(void);
> static inline bool sched_can_stop_tick(void) { return false; }
> #endif
>
> +enum sched_class_util {
> + cfs_util,
> + rt_util,
> + dl_util,
> + nr_util_types,
> +};
> +
> #ifdef CONFIG_CPU_FREQ
> struct freq_update_hook {
> + void (*func)(struct freq_update_hook *hook,
> + enum sched_class_util sched_class, u64 time,
> unsigned long util, unsigned long max);
> };
>
> void cpufreq_set_freq_update_hook(int cpu, struct freq_update_hook *hook,
> + void (*func)(struct freq_update_hook *hook,
> + enum sched_class_util sched_class,
> + u64 time, unsigned long util,
> + unsigned long max));
Have you looked at the asm that generated? At some point you'll start
spilling on the stack and it'll be a god awful mess.
Powered by blists - more mailing lists