]> git.hungrycats.org Git - linux/commitdiff
[CPUFREQ] Extra sanity checks in longhaul.
authorDave Jones <davej@redhat.com>
Tue, 24 Feb 2004 19:10:44 +0000 (19:10 +0000)
committerDave Jones <davej@redhat.com>
Tue, 24 Feb 2004 19:10:44 +0000 (19:10 +0000)
arch/i386/kernel/cpu/cpufreq/longhaul.c

index ca9ab989eaa0eb00046c977cbe46ec030a9b9658..5a2478dd2b0b70ffce9378148c080ec7ec841aa7 100644 (file)
@@ -256,6 +256,16 @@ static int __init longhaul_get_ranges (void)
        dprintk (KERN_INFO PFX "FSB: %dMHz Lowestspeed=%dMHz Highestspeed=%dMHz\n",
                 fsb, lowest_speed/1000, highest_speed/1000);
 
+       if (lowest_speed == highest_speed) {
+               printk (KERN_INFO PFX "highestspeed == lowest, aborting.\n");
+               return -EINVAL;
+       }
+       if (lowest_speed > highest_speed) {
+               printk (KERN_INFO PFX "nonsense! lowest (%d > %d) !\n",
+                       lowest_speed, highest_speed);
+               return -EINVAL;
+       }
+
        longhaul_table = kmalloc((numscales + 1) * sizeof(struct cpufreq_frequency_table), GFP_KERNEL);
        if(!longhaul_table)
                return -ENOMEM;