Print a loud warning message if we run out of MTRRs.

Signed-off-by: Carl-Daniel Hailfinger <[email protected]>

==================================================================
--- corebootv2/src/cpu/x86/mtrr/mtrr.c  (revision 3935)
+++ corebootv2/src/cpu/x86/mtrr/mtrr.c  (working copy)
@@ -228,9 +228,14 @@
        unsigned long range_startk, unsigned long range_sizek,
        unsigned long next_range_startk, unsigned char type, unsigned 
address_bits)
 {
-       if (!range_sizek || (reg >= BIOS_MTRRS)) {
+       if (!range_sizek) {
+               printk_debug("range_to_mtrr called for empty range\n");
                return reg;
        }
+       if (reg >= BIOS_MTRRS) {
+               printk_emerg("Running out of variable MTRRs!\n");
+               return reg;
+       }
        while(range_sizek) {
                unsigned long max_align, align;
                unsigned long sizek;
@@ -249,8 +254,10 @@
                set_var_mtrr(reg++, range_startk, sizek, type, address_bits);
                range_startk += sizek;
                range_sizek -= sizek;
-               if (reg >= BIOS_MTRRS)
+               if (reg >= BIOS_MTRRS) {
+                       printk_emerg("Running out of variable MTRRs!\n");
                        break;
+               }
        }
        return reg;
 }


-- 
http://www.hailfinger.org/


--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to