lkml.org 
[lkml]   [2008]   [May]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
SubjectRe: [BUG] 2.6.26-rc1 lost half the RAM on UltraSPARC 5
From
From: Mikael Pettersson <mikpe@it.uu.se>
Date: Tue, 13 May 2008 21:31:19 +0200

Ok, Mikael, I think I figured out this bug:

> Found ramdisk at physical address 0x10800000, size 3683665
> lmb_dump_all:
> memory.cnt = 0x4
> memory.size = 0xff40000
> memory.region[0x0].base = 0x0
> .size = 0x8000000
> memory.region[0x1].base = 0x10000000
> .size = 0x7efe000
> memory.region[0x2].base = 0x17f00000
> .size = 0x3a000
> memory.region[0x3].base = 0x17f3e000
> .size = 0x8000
> reserved.cnt = 0x2
> reserved.size = 0x0
> reserved.region[0x0].base = 0x10000000
> .size = 0x35bf60
> reserved.region[0x1].base = 0x10800000
> .size = 0x10b83551

From the very beginning your higher RAM is gone.
It's correct that some memory should be reserved,
for the ramdisk, but not 128MB :-)

The ramdisk is just under 4MB in size, so something is fishy here.

And indeed, I'm reserving the wrong length. Please try this
patch:

sparc64: Fix lmb_reserve() args in find_ramdisk().

This fixes the missing ram regression reported by
Mikael Pettersson <mikpe@it.uu.se>, much thanks for
all of this help in diagnosing this.

The second argument to lmb_reserve() is a size,
not an end address bounds.

Signed-off-by: David S. Miller <davem@davemloft.net>
---
arch/sparc64/mm/init.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/sparc64/mm/init.c b/arch/sparc64/mm/init.c
index a9828d7..3c7b947 100644
--- a/arch/sparc64/mm/init.c
+++ b/arch/sparc64/mm/init.c
@@ -768,7 +768,7 @@ static void __init find_ramdisk(unsigned long phys_base)
initrd_start = ramdisk_image;
initrd_end = ramdisk_image + sparc_ramdisk_size;

- lmb_reserve(initrd_start, initrd_end);
+ lmb_reserve(initrd_start, sparc_ramdisk_size);

initrd_start += PAGE_OFFSET;
initrd_end += PAGE_OFFSET;
--
1.5.5.1.57.g5909c


\
 
 \ /
  Last update: 2008-05-15 08:15    [W:0.066 / U:0.984 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site