From: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linuxppc-dev@ozlabs.org, linux-pm@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: [RFC PATCH v2 4/4] cpuidle: (POWER) Handle power_save=off
Date: Mon, 28 Nov 2011 16:33:25 +0530 [thread overview]
Message-ID: <4ED36A7D.9070308@linux.vnet.ibm.com> (raw)
In-Reply-To: <1322435233.23348.19.camel@pasglop>
On 11/28/2011 04:37 AM, Benjamin Herrenschmidt wrote:
> On Thu, 2011-11-17 at 16:59 +0530, Deepthi Dharwar wrote:
>> This patch makes pseries_idle_driver not to be registered when
>> power_save=off kernel boot option is specified. The
>> boot_option_idle_override variable used here is similar to
>> its usage on x86.
>
> Quick Q. With your changes, the CPU will never get into idle at all
> until cpuidle initializes and the driver loads.
>
> That means not only much later in the boot process, but potentially
> never if the distro has the driver as a module and fails to load it, or
> similar.
>
> Can't that be an issue ? Shouldn't we keep at least one of the basic
> idle functions as a fallback ?
>
On an LPAR if cpuidle is disabled, ppc_md.power_save is still set to
cpuidle_idle_call by default here. This would result in calling of
cpuidle_idle_call repeatedly, only for the call to return -ENODEV. The
default idle is never executed.
This would be a major design flaw. No fallback idle routine.
We propose to fix this by checking the return value of
ppc_md.power_save() call from void to int.
Right now return value is void, but if we change this to int, this
would solve two problems. One being removing the cast to a function
pointer in the prev patch and this design flaw stated above.
So by checking the return value of ppc_md.power_save(), we can invoke
the default idle on failure. But my only concern is about the effects of
changing the ppc_md.power_save() to return int on other powerpc
architectures. Would it be a good idea to change the return type to int
which would help us flag an error and fallback to default idle?
> Cheers,
> Ben.
>
>
Regards,
Deepthi
next prev parent reply other threads:[~2011-11-28 11:03 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-17 11:28 [RFC PATCH v2 0/4] cpuidle: (POWER) cpuidle driver for pSeries Deepthi Dharwar
2011-11-17 11:28 ` [RFC PATCH v2 1/4] cpuidle: (powerpc) Add cpu_idle_wait() to allow switching of idle routines Deepthi Dharwar
2011-11-17 11:28 ` Deepthi Dharwar
2011-11-27 22:48 ` Benjamin Herrenschmidt
2011-11-27 22:48 ` Benjamin Herrenschmidt
2011-11-28 11:02 ` Deepthi Dharwar
2011-11-28 20:35 ` Benjamin Herrenschmidt
2011-11-29 6:42 ` Deepthi Dharwar
2011-11-29 7:01 ` Benjamin Herrenschmidt
2011-11-29 7:15 ` Deepthi Dharwar
2011-11-29 7:15 ` Deepthi Dharwar
2011-11-28 11:02 ` Deepthi Dharwar
2011-11-17 11:28 ` [RFC PATCH v2 2/4] cpuidle: (POWER) cpuidle driver for pSeries Deepthi Dharwar
2011-11-27 23:03 ` Benjamin Herrenschmidt
2011-11-27 23:03 ` Benjamin Herrenschmidt
2011-11-28 11:02 ` Deepthi Dharwar
2011-11-17 11:28 ` Deepthi Dharwar
2011-11-17 11:28 ` [RFC PATCH v2 3/4] cpuidle: (POWER) Enable cpuidle and directly call cpuidle_idle_call() " Deepthi Dharwar
2011-11-27 23:05 ` Benjamin Herrenschmidt
2011-11-27 23:05 ` Benjamin Herrenschmidt
2011-11-28 11:03 ` Deepthi Dharwar
2011-11-17 11:28 ` Deepthi Dharwar
2011-11-17 11:29 ` [RFC PATCH v2 4/4] cpuidle: (POWER) Handle power_save=off Deepthi Dharwar
2011-11-17 11:29 ` Deepthi Dharwar
2011-11-27 23:07 ` Benjamin Herrenschmidt
2011-11-27 23:07 ` Benjamin Herrenschmidt
2011-11-28 11:03 ` Deepthi Dharwar [this message]
2011-11-28 20:39 ` Benjamin Herrenschmidt
2011-11-29 6:44 ` Deepthi Dharwar
2011-11-30 1:25 ` Deepthi Dharwar
2011-11-30 1:25 ` [linux-pm] " Deepthi Dharwar
2011-11-30 1:25 ` Deepthi Dharwar
2011-11-30 4:52 ` Benjamin Herrenschmidt
2011-11-30 4:52 ` [linux-pm] " Benjamin Herrenschmidt
2011-11-28 11:03 ` Deepthi Dharwar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4ED36A7D.9070308@linux.vnet.ibm.com \
--to=deepthi@linux.vnet.ibm.com \
--cc=benh@kernel.crashing.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=linux-pm@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.