Re: [RFC] [PATCH] cpufreq: allow full selection of default governors

From: William Heimbigner
Date: Fri Apr 27 2007 - 09:41:10 EST


On Fri, 27 Apr 2007, Dominik Brodowski wrote:
On Fri, Apr 27, 2007 at 02:09:57AM -0400, Dave Jones wrote:
On Thu, Apr 26, 2007 at 09:54:10PM -0400, Dominik Brodowski wrote:
> On Tue, Apr 24, 2007 at 08:03:27PM -0400, Dave Jones wrote:
>> On Tue, Apr 24, 2007 at 03:05:36PM -0700, Nish Aravamudan wrote:
>> > On 4/24/07, Dave Jones <davej@xxxxxxxxxx> wrote:
>> >> On Tue, Apr 24, 2007 at 09:03:23PM +0000, William Heimbigner wrote:
>> >> > The following patches should allow selection of conservative, powersave, and
>> >> > ondemand in the kernel configuration.
>> >>
>> >> This has been rejected several times already.
>> >> Ondemand and conservative isn't a viable governor for all cpufreq
>> >> implementations (ie, ones with high switching latencies).
>> >
>> > This piques my curiosity -- some governors don't work with some
>> > cpufreq implementations. Are those implementations in the kernel or in
>> > userspace? If in the kernel, then perhaps there should be some
>> > dependency expressed there in Kconfig between cpufreq implementation
>> > and the available governors
>>
>> it can't be solved that easily. powernow-k8 for example is fine to
>> use with ondemand on newer systems, where the latency is low.
>> On older models however, it isn't.
>>
>> >> Also, see the
>> >> comment in the Kconfig a few lines above where you are adding this.
>> >
>> > Are these governors unfixable? If
>>
>> tbh, I've forgotten the original issues that caused the comment
>> to be placed there. Dominik ?
>
> Not unfixable, but: cpufreq is currently[*] built around the assumption that
> at least one governor is correctly initialized or can be brought to work
> when a CPU is registered with the cpufreq core.

It would have to take something fairly spectacular though for performance or
powersave to fail registration. Can you remember why we chose not to allow those?

performance _is_ allowed; powersave would be possible -- but then those who
accidentally enable it on elanfreq might wait 100 times as long for the
system to boot, with gx-suspmod it might even be 255 times as long -- okay,
by default it's just 20 times as long, but still...

Dominik


People should be smart enough to realize what "powersave" would imply... or at least read the help for it; again, we wouldn't have the "default default governor" be powersave, it would be performance, and they could choose powersave if they wanted to.

Also, what of the conservative governor? I understand now some of the problems
that could arise with ondemand, but conservative doesn't rely on low-latency
transitions, and seems no riskier than performance or powersave. In fact,
conservative would probably be the most useful default governor available for a
laptop system.

For now, I propose allowing a default governor of powersave; allowing conservative while being tagged experimental, and possibly, but not likely, allowing ondemand, tagged as experimental.

William Heimbigner
icxcnika@xxxxxxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/