coold release 2.1

coold is a small daemon and a kernel module that keeps the computer from overheating.
The program works by calling the Kernel's idle loop when temperatures get too hot.

coold can also enable HLT detect on supported motherboards.

============
Dependencies
============
Linux Kernel (2.4 or 2.6)
lm_sensors
statgrab (Optional, for CPU idle detection)

===============
Configure coold
===============
Unless you have the same motherboard as I do. coold will NOT work properly
without changing a few lines in coold.c!

Edit coold.c and change the /proc temperature sensor files to match yours.

In cooldhlt.c you might want to change the following line:
#define COOLD_MAJOR 251

COOLD_MAJOR - The major device number for /dev/coold. Remember to change the major number in the mknod if you change this.

In coold.c you might want to change the following lines:
#undef ENABLE_HLT_DETECT
#undef NODAEMON
#undef USE_STATGRAB

ENABLE_HLT_DETECT - Potentially Dangerous Option, I recommend leaving '#undef' unless you know what you are doing. Change to '#define ENABLE_HLT_DETECT' if you want to enable HLT detection for cooling on supported motherboards.
NODAEMON - Change to '#define NODAEMON' if you want to debug coold.
USE_STATGRAB - Change to '#define USE_STATGRAB' if you have the libstatgrab library. Only really useful with '#define ENABLE_HLT_DETECT'. What it does is turns off cooling when the CPU is busy for maximum performance.

=============
Compile coold
=============
Edit ./Make.sh
Then run ./Make.sh

=========
Run coold
=========
As root.

Create the character device:
mknod /dev/coold c 251 0

Insert the HLT module:
insmod /full/path/to/module/cooldhlt.o

Start coold:
/full/path/to/daemon/coold

=======
Contact
=======
See the savannah page for contact information.
http://savannah.nongnu.org/projects/coold/
