grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Compilation PowerPC64


From: Manoel Rebelo Abranches
Subject: Re: [PATCH] Compilation PowerPC64
Date: Wed, 03 Dec 2008 15:50:06 -0200

Hi Pavel. The patch which changes the link address from 0x10000 to
0x200000 was sent by me.
there was a overlapping of the load-base used in CHRP/PAPR machines
0x4000 and the link address of the ELF segments. The address used is the
same that Yaboot uses but theoretically any address that don't causes
overlap should work (provide that it also doesn't overlap real-base and
that there is space to load the kernel).

On Wed, 2008-12-03 at 12:29 -0500, Pavel Roskin wrote:
> On Wed, 2008-12-03 at 11:20 -0500, Pavel Roskin wrote:
> 
> > r1923 has no "out of memory" problem.  r1924 doesn't compile.
> 
> I think I understand something now.  "out of memory" is caused by
> heap_init() inside grub_claim_heap() failing due to memory overlap (by
> the way, I hate functions inside functions).
> 
> In r1923:
> 
> _start=0x10000
> _end=0x23640
> addr=0x200000
> (addr + len)=0x3fffff
> 
> In r1933:
> 
> _start=0x200000
> _end=0x213658
> addr=0x200000
> (addr + len)=0x3fffff
> 
> Thus, we have an overlap.  This is caused by r1928.  Changing the link
> address in conf/powerpc-ieee1275.rmk from 0x200000 to 0x100000 makes
> _start equal 0x100000 and resolves the "out of memory" problem.
> 
> The "addr" variable comes from HEAP_MIN_SIZE, and it's also 0x200000.
> 
> I'm testing PowerPC code in qemu, which doesn't provide the memory
> information, so the problem may not exist on real machines.
> 
> If linking at 0x200000 is important, we could allocate heap after _end.
> 
-- 
Best Regards,

Manoel Abranches <address@hidden>
IBM Linux Technology Center Brazil





reply via email to

[Prev in Thread] Current Thread [Next in Thread]