[v10 PATCH 2/9]: cpuidle: cleanup drivers/cpuidle/cpuidle.c
Torsten Duwe
duwe at lst.de
Sat Dec 5 09:20:00 EST 2009
On Wednesday 02 December 2009, Arun R Bharadwaj wrote:
> * Arun R Bharadwaj <arun at linux.vnet.ibm.com> [2009-12-02 15:24:27]:
>
> This patch cleans up drivers/cpuidle/cpuidle.c
> Earlier cpuidle assumed pm_idle as the default idle loop. Break that
> assumption and make it more generic.
Is there a problem with the old pm_idle? Couldn't it be integrated more
transparently, instead of replacing it this intrusively?
> --- linux.trees.git.orig/include/linux/cpuidle.h
> +++ linux.trees.git/include/linux/cpuidle.h
> @@ -41,7 +41,7 @@ struct cpuidle_state {
> unsigned long long usage;
> unsigned long long time; /* in US */
>
> - int (*enter) (struct cpuidle_device *dev,
> + void (*enter) (struct cpuidle_device *dev,
> struct cpuidle_state *state);
> };
While it may be a good idea to move the residency calculation to one central
place, at least in theory a cpuidle_state->enter() function could have a
better method to determine its value.
Either way you're implicitly introducing an API change here, and you're at
least missing two functions on ARM and SuperH, respectively. Could you
separate this API change out, and not take it for granted in the other
patches?
Torsten
More information about the Linuxppc-dev
mailing list