From: Pavel Machek In 2.6.3, cleanups arrived, and they got test for invalid frequencies wrong. Only first frequency is allowed to be < FID_TABLE_BOTTOM, but due to bug it cleanups it allowed no frequencies < FID_TABLE_BOTTOM. This fixes it. --- arch/i386/kernel/cpu/cpufreq/powernow-k8.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) diff -puN arch/i386/kernel/cpu/cpufreq/powernow-k8.c~powernow-frequency-handling-fix arch/i386/kernel/cpu/cpufreq/powernow-k8.c --- 25/arch/i386/kernel/cpu/cpufreq/powernow-k8.c~powernow-frequency-handling-fix 2004-02-22 15:37:52.000000000 -0800 +++ 25-akpm/arch/i386/kernel/cpu/cpufreq/powernow-k8.c 2004-02-22 15:37:52.000000000 -0800 @@ -521,7 +521,8 @@ static int check_pst_table(struct pst_s } if ((pst[j].fid > MAX_FID) || (pst[j].fid & 1) - || (pst[j].fid < HI_FID_TABLE_BOTTOM)){ + || (j && (pst[j].fid < HI_FID_TABLE_BOTTOM))) { + /* Only first fid is allowed to be in "low" range */ printk(KERN_ERR PFX "fid %d invalid : 0x%x\n", j, pst[j].fid); return -EINVAL; } _