Subject: Re: [PATCH] Add idle power save for ppc 4xx

From: Hollis Blanchard <[email-masked]>
Date: Mon, 31 Mar 2008 19:24:24 +0000 (UTC)

On Mon, 31 Mar 2008 13:05:18 -0500, Josh Boyer wrote:

> On Mon, 31 Mar 2008 12:07:17 -0500
> Josh Boyer <[email-masked]> wrote:
> 
>> On Mon, 2008-03-31 at 08:12 -0500, Jerone Young wrote:
>> > # HG changeset patch
>> > # User Jerone Young <[email-masked]> # Date 1206969060 18000
>> > # Node ID 10aea37177130bbe5de7bee6ec06d9010bc5da1f # Parent 
>> > 1506aa38ddabb0bf73fff3ac3f3db5f9ef6458cc Add idle power save for ppc
>> > 4xx
>> > 
>> > This patch sets the wait state MSR when power_save is called in
>> > cpu_idle loop for ppc4xx. This is mainly to help out virtualization
>> > solutions such as KVM. This way the virtualization soultions are able
>> > to tell if the guest kernel is idle.
>> > 
>> > I have tested this on hardware & KVM virtual guest.
>> 
>> I'm not overly thrilled with adding this to all of 4xx.  It doesn't
>> actually save much power at all (1% on a project that actually measured
>> it with an amp meter recently) and there's really no other benefit to
>> doing it outside of the virtual guest case.

So it slightly helps hardware, and it helps virtualization a *lot*. 
What's the problem?

>> I'm assuming you pass a dtb to the virtual guest when you start it up.
>> Could you define a property in the CPU node there that can be parsed to
>> use the power_save function instead of always making it the default?
> 
> Actually, you probably don't want this as a property in the device tree.
>  It doesn't describe hardware.  A Kconfig option might be warranted
> though.

There will be a device tree binding for hypervisor properties, so if it's 
not always enabled, having a hypervisor node (for any hypervisor) in the 
device tree would be an indicator. Far better than a Kconfig option, at 
any rate.

-- 
Hollis Blanchard
IBM Linux Technology Center