summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbcollins <tailor@grayson>2006-06-01 13:19:37 -0400
committerBen Collins <bcollins@ubuntu.com>2006-06-01 13:19:37 -0400
commite1d54f48e7d0a8d8026764e6d3a29e33137bf652 (patch)
treee2597af483aa555a9a1c5205cdcdf02f5cc6dfa1
parent37b97bdd3ad6b9c426b7b3c91480669b2fe4897c (diff)
downloadsilo-e1d54f48e7d0a8d8026764e6d3a29e33137bf652.tar.gz
[silo @ 147]
Make sure initrd phys address isn't greater than 32-bits. I need to add a new option to the kernel to accept initrd images in higher memory regions.#
-rw-r--r--second/memory.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/second/memory.c b/second/memory.c
index 72b619f..31094dd 100644
--- a/second/memory.c
+++ b/second/memory.c
@@ -341,6 +341,12 @@ static char *sun4u_memory_find (unsigned int len, int is_kernel)
p[i].size -= sun4u_image_len;
}
+ /* Make sure initrd phys isn't greater than 32-bits. We
+ * can only pass unsigned int to the kernel for this
+ * location. */
+ if (!is_kernel && p[i].phys >= 0x0000000100000000ULL)
+ continue;
+
if (p[i].size >= len) {
phys = p[i].phys;
break;