On Fri, 25 Sep 2009 10:54:24 +0200 Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote: > On Fri, 2009-09-25 at 12:36 +0530, Vaidyanathan Srinivasan wrote: > > * Arjan van de Ven <arjan@xxxxxxxxxxxxx> [2009-09-24 14:22:28]: > > > > > On Thu, 24 Sep 2009 10:42:41 +0530 > > > Arun R Bharadwaj <arun@xxxxxxxxxxxxxxxxxx> wrote: > > > > > > > * Arun R Bharadwaj <arun@xxxxxxxxxxxxxxxxxx> [2009-09-22 > > > > 16:55:27]: > > > > > > > > Hi Len, (or other acpi folks), > > > > > > > > I had a question regarding ACPI-cpuidle interaction in the > > > > current implementation. > > > > > > > > Currently, every cpu (i.e. acpi_processor) registers to cpuidle > > > > as a cpuidle_device. So every cpu has to go through the process > > > > of setting up the idle states and then registering as a cpuidle > > > > device. > > > > > > > > What exactly is the reason behind this? > > > > > > > > > > technically a BIOS can opt to give you C states via ACPI on some > > > cpus, but not on others. > > > > > > in practice when this happens it tends to be a bug.. but it's > > > technically a valid configuration > > > > So we will need to keep the per-cpu registration as of now because > > we may have such buggy BIOS in the field and we don't want the > > cpuidle framework to malfunction there. > > If the BIOS doesn't mention a certain C state on a cpu, and you try to > set it anyway, does that go boom? > > This whole per-cpu registration thing is horridly ugly, can't you > have a per-cpu C state exception mask and leave it at that -- if its > really needed? the real solution is to make the acpi code always know about C1, even if the bios doesn't.... That's one for Len :) (C1 is just "hlt", what we do in the other idle loop ;-) -- Arjan van de Ven Intel Open Source Technology Centre For development, discussion and tips for power savings, visit http://www.lesswatts.org -- 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