[patch] enhance powerd(8) to handle max temperature

Kris Kennaway kris at obsecurity.org
Mon Jul 30 18:03:56 UTC 2007


On Mon, Jul 30, 2007 at 11:28:59AM +0200, Pietro Cerutti wrote:
> Hajimu UMEMOTO wrote:
> > Hi,
> > 
> >>>>>> On Fri, 27 Jul 2007 16:43:29 +0200
> >>>>>> Pietro Cerutti <gahr at gahr.ch> said:
> > 
> > gahr> Hi list,
> > gahr> here is a patch to allow powerd(8) accept a "-t tval" option to set a
> > gahr> temperature limit above which performance should be decreased.
> > gahr> It's a first draft, and I identified the following problems:
> > 
> > gahr> - the CPU temperature takes some time to decrease, so powerd keeps
> > gahr> decreasing the CPU frequency until the temperature is below the limit.
> > gahr> The effect is a "increase to maximum, decrease to minimum, increase to
> > gahr> maximum, decrease to minimum, ...." which may not be desirable.
> > 
> > gahr> - the temperature is retrieved by the hw.acpi.thermal.tz0.temperature
> > gahr> sysctl MIB. Support for other methods would be desirable.
> > 
> > gahr> The patches to powerd.c and powerd.8 are here:
> > gahr> http://www.gahr.ch/FreeBSD/patches/powerd.c.diff
> > gahr> http://www.gahr.ch/FreeBSD/patches/powerd.8.diff
> > 
> > gahr> Any comment is welcome!
> > 
> > We have a passive cooling mechanism already in our kernel.  It runs
> > according to an ACPI specification.
> 
> You are right, but the passive colling mechanism could not be available
> on some systems where thermal is available, and I'm still waiting for
> answers about acpi_thermal not sending notifies.
> See my previous post:
> http://lists.freebsd.org/pipermail/freebsd-hackers/2007-July/021361.html
> 
> What's wrong with including this feature directly in powerd?

In general duplication is undesirable.  You should focus on trying to
solve the problems with using the ACPI method.  For example, the acpi
passive cooling probably uses a better algorithm than your patches,
e.g. including appropriate hysteresis.

Kris


More information about the freebsd-hackers mailing list