[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Compilation PowerPC64
From: |
Pavel Roskin |
Subject: |
Re: [PATCH] Compilation PowerPC64 |
Date: |
Wed, 03 Dec 2008 12:29:44 -0500 |
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.
--
Regards,
Pavel Roskin