summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-08-22 11:13:22 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-08-22 11:13:22 -0700
commit7da6cd8bdfe13fecc061b868dda57ee1a3a051f4 (patch)
treec91173fc74f9e66a496296b031728a82835d70b3 /arch
parent13c926e04602db207366c7d213dd99d443ac4ad8 (diff)
parentefb896300cc9215f60bb4f7f77f93541ab9f1713 (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC32]: Revert f642b263800e6e57c377d630be6d2a999683b579. [SPARC64]: Need to clobber global reg vars in switch_to().
Diffstat (limited to 'arch')
-rw-r--r--arch/sparc/mm/init.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/sparc/mm/init.c b/arch/sparc/mm/init.c
index c13e6cd279a..a1bef07755a 100644
--- a/arch/sparc/mm/init.c
+++ b/arch/sparc/mm/init.c
@@ -206,7 +206,8 @@ unsigned long __init bootmem_init(unsigned long *pages_avail)
#ifdef CONFIG_BLK_DEV_INITRD
/* Now have to check initial ramdisk, so that bootmap does not overwrite it */
if (sparc_ramdisk_image) {
- sparc_ramdisk_image -= KERNBASE;
+ if (sparc_ramdisk_image >= (unsigned long)&_end - 2 * PAGE_SIZE)
+ sparc_ramdisk_image -= KERNBASE;
initrd_start = sparc_ramdisk_image + phys_base;
initrd_end = initrd_start + sparc_ramdisk_size;
if (initrd_end > end_of_phys_memory) {