Bug#468149: linux-source-2.6.22: longrun cpufreq module reports false min freq
Package: linux-source-2.6.22
Version: 2.6.22-6
Severity: normal
Tags: patch
The longrun cpufreq module reports a false minimum frequency 3MHz on
300-600MHz Crusoe processor. This may be due to a calculation bug
in the module.
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable'), (100, 'testing')
Architecture: i386 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.22-3-amd64
Locale: LANG=ja_JP.UTF-8, LC_CTYPE=ja_JP.UTF-8 (charmap=UTF-8)
Versions of packages linux-source-2.6.22 depends on:
ii binutils 2.17-3 The GNU assembler, linker and bina
ii bzip2 1.0.3-6 high-quality block-sorting file co
Versions of packages linux-source-2.6.22 recommends:
ii gcc 4:4.1.1-15 The GNU C compiler
ii libc6-dev [libc-dev] 2.3.6.ds1-13etch4 GNU C Library: Development Librari
ii make 3.81-2 The GNU version of the "make" util
-- no debconf information
--- linux-source-2.6.22/arch/i386/kernel/cpu/cpufreq/longrun.c 2007-07-09 08:32:17.000000000 +0900
+++ linux-crusoe/arch/i386/kernel/cpu/cpufreq/longrun.c 2008-02-27 19:52:06.691016015 +0900
@@ -245,7 +245,7 @@
if ((ecx > 95) || (ecx == 0) || (eax < ebx))
return -EIO;
- edx = (eax - ebx) / (100 - ecx);
+ edx = ((eax - ebx) * 100) / (100 - ecx);
*low_freq = edx * 1000; /* back to kHz */
dprintk("low frequency is %u kHz\n", *low_freq);
Reply to: