Re: [v6 PATCH 0/7]: cpuidle/x86/POWER: Cleanup idle powermanagement code in x86, cleanup drivers/cpuidle/cpuidle.c and introducecpuidle to POWER.

From: Peter Zijlstra
Date: Fri Sep 25 2009 - 04:54:07 EST


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?



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/