[PATCH] PPC64: large INITRD causes kernel not to boot [UPDATE]
Mark Bellon
mbellon at mvista.com
Wed Sep 7 08:50:02 EST 2005
In PPC64 there are number of problems in arch/ppc64/boot/main.c that
prevent a kernel from making use of a large (greater than ~16MB) INITRD.
This is 64 bit architecture and really large INITRD images should be
possible.
Simply put the existing code has a fixed reservation (claim) address and
once the kernel plus initrd image are large enough to pass this address
all sorts of bad things occur. The fix is the dynamically establish the
first claim address above the loaded kernel plus initrd (plus some
"padding" and rounding). If PROG_START is defined this will be used as
the minimum safe address - currently known to be 0x01400000 for the
firmwares tested so far.
We've talked about this in linuxppc64-dev at ozlabs.org and this is what
seems to have settled out.
mark
Signed-off-by: Mark Bellon <mbellon at mvista.com>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: initrd-patch
Url: http://ozlabs.org/pipermail/linuxppc64-dev/attachments/20050906/a747e99f/attachment.txt
More information about the Linuxppc64-dev
mailing list