• Mark Bellon's avatar
    [PATCH] PPC64: large INITRD causes kernel not to boot · 3cc747e9
    Mark Bellon authored
    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.
    Signed-off-by: default avatarMark Bellon <mbellon@mvista.com>
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    3cc747e9
main.c 8.6 KB