* Andi Kleen <andi@xxxxxxxxxxxxxx> [2009-10-14 09:18:38]: > > How about something like this.. > > If the arch does not enable CONFIG_CPU_IDLE, the cpuidle_idle_call > > which is called from cpu_idle() should call default_idle without > > involving the registering cpuidle steps. This should prevent bloating > > up of the kernel for archs which dont want to use cpuidle. > > On x86 some people want small kernel too, so selecting it on a architecture > granuality is not good. Also you can make it default, you just need > to slim it down first. > No, I dont mean selecting it on an architecture granularity. At compile time, if CONFIG_CPU_IDLE is disabled, the arch can redefine cpuidle_idle_call. For e.g. in arch/x86/kernel/process.c #ifndef CONFIG_CPU_IDLE void cpuidle_idle_call(void) { if (local_idle) local_idle(); else default_idle(); } #endif where local_idle points to the idle routine selected using select_idle_routine() which can be poll, mwait, c1e. So this way, we still preserve the exact same functionality as before and we also remove the ugly pm_idle exported function pointer and we avoid unnecessary code bloat for platforms who do not want to use cpuidle. --arun -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html