proposal: set default lid state to S3, performance/economy Cx states to Cmax

John Baldwin jhb at freebsd.org
Wed May 7 18:34:41 UTC 2014


On Tuesday, May 06, 2014 6:15:46 pm Ian Lepore wrote:
> On Tue, 2014-05-06 at 16:37 -0400, John Baldwin wrote:
> > On Tuesday, May 06, 2014 2:08:35 pm Adrian Chadd wrote:
> > > On 5 May 2014 13:57, John Baldwin <jhb at freebsd.org> wrote:
> > > 
> > > > The user in question found this on 9-stable with the existing defaults as the
> > > > HPET was just plain broken on their system and that was unrelated to Cx states.
> > > > (Rather, Cx states were only involved because worries about them are why the
> > > > system chose to use HPET.  Had Cx states been enabled by default, they would
> > > > have had to disable those as well in addition to forcing LAPIC instead of
> > > > HPET.)
> > > 
> > > Hm. Sounds uncomfortable. How does Windows run on systems like this?
> > > Do the windows drivers just disable HPET and use LAPIC or worse for
> > > timing, and just ignore anything lower than C1?
> > 
> > I have no idea.  Maybe they use the RTC. :-/  Maybe the HPET on these systems
> > works if you use it "sparingly".  I believe OS X might have only used the HPET
> > to provide the "missing" LAPIC wakeups when entering Cx for example.  (Our current
> > eventtimer system wants to always use whichever timer it picks, not switch off
> > between them.)
> > 
> 
> The eventtimer code is happy to switch between timers on the fly, but
> iirc the only interface to that feature is sysctl.  I found it fairly
> easy to add an in-kernel API for changing the frequency of the current
> timer on the fly.   I think it would be just as easy to add a kernel
> call to change timers as well.

Ah.  Well, if it's only a small slice of time where machines need this, I'd be
fine with those machines just having to disable C1E and forcing use of LAPIC
rather than adding a lot of goop to do LAPIC + HPET and then hoping the HPET
works well enough.

-- 
John Baldwin


More information about the freebsd-acpi mailing list