Hi,

by looking at the code and checking who generates huge system load on
a hp machine that throws lots of thermal zone events i found out that
ENABLE_THERMAL_MANAGEMENT now defaults to "kernel_passive".
Is there a reason for this? I mean: the wohle thermal code does not
(and can not) work on most machines and it might cause lots of
/proc/acpi/thermal_zone/* polling which in turn causes cpu-load in the
kernel - something i'd like to avoid when programming a power_SAVE_
daemon ;-)

So is there a reason for this not being "off" as a default?

What i wanted to do (and why i stumbled onto it) was:
I wanted to put a check for "THERMAL_MANAGEMENT =! off" into the beginning
of void PM_Interface::checkTemperatureStateChanges() in pm_interface.cpp
because this function is called on every thermal_zone ACPI event and it
is right now quite expensive. The downside would be that we would not get
thermal events in powersaved if THERMAL_MANAGEMENT was set to "off", but
there is not much useful we can do with them in that case anyway.

The problem is really that on those HP machines, whenever you cross a trip
point is crossed an acpi event is thrown and when the machine is cooling down,
the cpu activity caused by this acpi event might be enough to cross the trip
point again - upwards. This leaves the machine hovering around the trippoint
all the time, with ~10-20% cpu load in kernel space, probably because of all
that /proc/acpi polling which is grossly inefficient but we cannot do much
about the ACPI braindamage.

Any opinions?
-- 
Stefan Seyfried                  \ "I didn't want to write for pay. I
QA / R&D Team Mobile Devices      \ wanted to be paid for what I write."
SUSE LINUX Products GmbH, Nürnberg \                    -- Leonard Cohen
_______________________________________________
powersave-devel mailing list
[email protected]
http://forge.novell.com/mailman/listinfo/powersave-devel

Reply via email to