Re: 2.6.27-rc1: critical thermal shutdown on thinkpad x60 (bisected)

From: Milan Broz
Date: Tue Aug 12 2008 - 11:49:04 EST



>>>> yes. maybe some userspace tool controlling frequency is involved, no idea yet.
>>>> But it is 2.6.26 tree for sure.
>>>>
>>> So it definitely is in 2.6.26.2, and it definitely is in 2.6.26?
>>>
>
>
> The bug is _not_ in 2.6.26, it was introduced in 2.6.26.1.
>
> The problem is, that now the CPU frequency doesn't decrease at some
> temperature level and fan is unable to cool it properly.
>
> bisect on 2.6.26.y tree finished in this patch:
> (I expect similar patch in 2.6.27-rc)
>
> commit 04f496871e8af87a1e40c504371a206fd7389193
> Author: Thomas Renninger <trenn@xxxxxxx>
> Date: Wed Jul 30 18:20:10 2008 +0000
>
>
and this seems to fix it for me:
--

Do not use unsigned int if there is test for negative number...

See drivers/acpi/processor_perflib.c
static unsigned int ignore_ppc = -1;
...
if (event == CPUFREQ_START && ignore_ppc <= 0) {
ignore_ppc = 0;
...

Signed-off-by: Milan Broz <mbroz@xxxxxxxxxx>
---
drivers/acpi/processor_perflib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.26.y/drivers/acpi/processor_perflib.c
===================================================================
--- linux-2.6.26.y.orig/drivers/acpi/processor_perflib.c 2008-08-12 17:20:07.000000000 +0200
+++ linux-2.6.26.y/drivers/acpi/processor_perflib.c 2008-08-12 17:35:53.000000000 +0200
@@ -70,7 +70,7 @@ static DEFINE_MUTEX(performance_mutex);
* 0 -> cpufreq low level drivers initialized -> consider _PPC values
* 1 -> ignore _PPC totally -> forced by user through boot param
*/
-static unsigned int ignore_ppc = -1;
+static int ignore_ppc = -1;
module_param(ignore_ppc, uint, 0644);
MODULE_PARM_DESC(ignore_ppc, "If the frequency of your machine gets wrongly" \
"limited by BIOS, this should help");


--
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/