]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sat, 13 Feb 2010 15:30:22 +0000 (16:30 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sat, 13 Feb 2010 15:30:22 +0000 (16:30 +0100)
* loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking.

ChangeLog
loader/sparc64/ieee1275/linux.c

index 47da5ccf22238250df83b5878196b3def971b6bd..c9f64df01fcaaef96d87b98dbd4ade64fff99417 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking.
+
 2010-02-13  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards.
index 42bae6bb808f6353197c9c323a1e43e5d5ccc79b..51d82ddcc2128442681901f986ca0aa9f9b6b157 100644 (file)
@@ -193,20 +193,20 @@ alloc_phys (grub_addr_t size)
       return 0;
 
     addr = align_addr (addr, FOUR_MB);
-    if (addr >= end)
+    if (addr + size >= end)
       return 0;
 
     if (addr >= grub_phys_start && addr < grub_phys_end)
       {
        addr = align_addr (grub_phys_end, FOUR_MB);
-       if (addr >= end)
+       if (addr + size >= end)
          return 0;
       }
     if ((addr + size) >= grub_phys_start
        && (addr + size) < grub_phys_end)
       {
        addr = align_addr (grub_phys_end, FOUR_MB);
-       if (addr >= end)
+       if (addr + size >= end)
          return 0;
       }
 
@@ -217,14 +217,14 @@ alloc_phys (grub_addr_t size)
        if (addr >= linux_paddr && addr < linux_end)
          {
            addr = linux_end;
-           if (addr >= end)
+           if (addr + size >= end)
              return 0;
          }
        if ((addr + size) >= linux_paddr
            && (addr + size) < linux_end)
          {
            addr = linux_end;
-           if (addr >= end)
+           if (addr + size >= end)
              return 0;
          }
       }