Re: [PATCH] Acer Aspire One Fan Control

From: Borislav Petkov
Date: Tue May 12 2009 - 02:02:48 EST


Hi,

On Mon, May 11, 2009 at 08:05:07PM +0200, Peter Feuerer wrote:
> Hello,
>
> Borislav Petkov writes:
>>
>> the more I'm looking at the driver, the more I get annoyed by that
>> user/kernel mode operation split. Remind me again why the driver should
>> be loaded and not started automatically but the user should be required
>> to activate it explicitly?
>
> The idea of not starting the module in kernel mode was from Matthew. And
> he stated that it could harm the hardware when software controls the fan
> instead of the BIOS. It may also be possible, that the warranty gets
> invalid when you do that. Not sure about how acer would handle a defect
> which could be caused by overheating and when they detect that software
> was controlling the fan. That's why I think Matthew is right.

We actually don't have any reliable source for the temperature envelope
of the surrounding hardware, right? Quick search didn't reveal anything
here. I only came across a bunch of freeware tools which do fan control
of the aspire ones but all the temperature trip points for the fan in
those were ranging from 50 - 63Â which leads to think that those all are
kinda "common sense"-settings the authors came up with without any hard
data from the manufacturer.

For example, mine has a Seagate Momentum ATA-8 ST9160310AS hdd and its
spec[Â] says:

"2.10.1 Ambient temperature

Ambient temperature is defined as the temperature of the environment
immediately surrounding the drive. Actual drive case temperature should
not exceed 65ÂC (149ÂF) within the operating ambient conditions."

>From what I could measure here empirically, the fan starts in low RPM
mode at around 37ÂC and and gets cranked up to max when the temp
reaches ~55ÂC. This envelope in the BIOS code is taking surrounding
devices into consideration, I guess and am wondering whether the 67ÂC
setting in your driver is still within safe limits, hmmm?

[..]

>> What is more, if the userspace program would fail, there's no way
>> for the module to get activated again and jump in instead of the
>> userspace program to the rescue. Which goes more to show that you
>> don't need userspace control _at_ _all_ and the only two agents
>> controlling the fan should be the BIOS or the kernel module.
>
> After reading and thinking about all this a while, I agree with you.
> In the next patch I won't allow the user to switch on/off the fan
> anymore.

Cool.

>> So I think that the kernel module should take over fan control
>> upon load. This way you'll be able to get rid of all that needless
>> complexity around kernelmode/disable_kernelmode and have a simple
>> clean design.
>
> I would really like to do that, but what do you think about the
>hardware damage / warranty things written above?

It seems that the BIOS setting is lower/safer so, yes, you're right, we
don't want to void any warranties, so the BIOS control _should_ actually
be the default since we are not at all sure whether moving the envelope
up the temperature scale won't hurt the hardware.

/me would love to see some reliable info on that from the manufacturer...

[..]

Thanks for your work.


Âhttp://www.seagate.com/staticfiles/support/disc/manuals/notebook/momentus/5400.4/SATA/100468842a.pdf

--
Regards/Gruss,
Boris.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/