From: Paul Nasrat Date: Fri, 17 Aug 2007 14:22:00 +0000 (+0100) Subject: On some of the larger kernels we are starting to see a space squeeze. X-Git-Tag: yaboot-1.3.14~1 X-Git-Url: http://git.ozlabs.org/?a=commitdiff_plain;h=58838f4a6973c60dc1b764fba20682ce07bb6c96;p=tonyb-yaboot.git On some of the larger kernels we are starting to see a space squeeze. The kernel is currently being put at 20MBs and on some of the newer pSeries systems we are getting real-bases at 32MBs (plus AIX 5.3 has real-base at 32MB, so if AIX is ever booted, everything gets shifted). If the uncompressed kernel+initrd is larger than 12MBs then we see truncation (typical on install kernels). This patch moves the KERNELADDR to 0x00C00000 (12MB). If real-base is 12MB and is loaed there, yaboot will keep going up by a megabyte until prom_claim finds space. And the uncompressed kernel should be indifferent where it's loaded because there's nothing at 32MB (ie it will operate as it does today). If OF is loaded at 32MB then the 12MB region is free and the uncompressed kernel will have more space to grow. I have tested this on numerous pSeries boxes. I have not tested on anything else. Signed-off-by: Jake Moilanen --- diff --git a/Makefile b/Makefile index 14ee597..ce0dc06 100644 --- a/Makefile +++ b/Makefile @@ -20,8 +20,8 @@ TEXTADDR = 0x200000 # Malloc block at 3Mb -> 4Mb MALLOCADDR = 0x300000 MALLOCSIZE = 0x100000 -# Load kernel at 20Mb and ramdisk just after -KERNELADDR = 0x01400000 +# Load kernel and ramdisk at real-base. If there is overlap, will retry until find open space +KERNELADDR = 0x00C00000 # Set this to the prefix of your cross-compiler, if you have one. # Else leave it empty.