[RFC] Patch to enable temperature ceiling in powerd

John Baldwin jhb at freebsd.org
Thu Jan 31 04:15:55 PST 2008


On Wednesday 30 January 2008 05:56:19 pm Alexandre "Sunny" Kovalenko wrote:
> Some time ago I have put together patch for powerd, which allows user to
> specify the temperature threshold at which powerd will lower CPU
> frequency no matter what the load was at the time. I recently had to
> adapt it to the 7.0-PRERELEASE for someone with the overheating laptop,
> which got me to think that it might be useful for someone else yet.
> 
> Basic idea is fairly simple -- check temperature in TZ0 and, if it has
> reached certain value, either override frequency with the lowest
> available (in the case of 'max' setting) or change idle time to 100% and
> let adaptive algorithm decrease frequency gradually.
> 
> I imagine it also could be poor man's substitute for the low noise
> acoustic policy ;)
> 
> If there is an interest, I will go ahead and submit a PR, otherwise it
> will live in the mail archives for someone to find. Any comments,
> suggestions or criticisms are welcome.
> 
> Temperature threshold (in Celsius) could be set by means of '-T' command
> line option (as in '-T 60').

A couple of suggestions:

- I would make the default temperature 0 instead of 200 and just disable the
  feature altogether if it is set to 0 (i.e. don't read the current
  temperature and don't do any checks if it is 0).
- I would allow the temperature to be specified in either C, K or F with a
  suffix to indicate the scale.  (e.g., "80C", "120F", "300K")
- I would let the thermal zone name be configurable with a default of "tz0".
  (e.g. "-z tz3").  You would then snprintf the sysctl mib name that gets
  passed to sysctlbyname(3).

-- 
John Baldwin


More information about the freebsd-acpi mailing list