[SILO PATCH]: Support larger sparc64 kernels

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

 



This SILO patch, coupled with a sparc64 kernel patch which
I've checked into the sparc-2.6 GIT tree and will post
as a follow-up, allows up to 64MB kernel images.

Note that this takes care of only disk and CDROM boots,
there are still limits to tftpboot image size due
to openfirmware limitations that can't be eliminated
without implementing a full two-stage netboot loader.

Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

diff --git a/second/main.c b/second/main.c
index d5285bb..4f753b0 100644
--- a/second/main.c
+++ b/second/main.c
@@ -1205,12 +1205,16 @@ try_again:
 		unsigned int size;
 		unsigned char *mem;
 
-		size = 0x800000;
-		mem = (unsigned char *)image_memory_find(size);
-
-		if (!mem) {
-		    size = 0x400000;
-		    mem = (unsigned char *)image_memory_find(size);
+		/* As of 2.6.25-rc6, an "allyesconfig" kernel is around
+		 * ~42MB in size.  So we try to carve out up to 64MB of
+		 * memory for the kernel.
+		 */
+		for (size = 64 * 1024 * 1024;
+		     size >= 4 * 1024 * 1024;
+		     size -= 4 * 1024 * 1024) {
+			mem = (unsigned char *)image_memory_find(size);
+			if (mem)
+				break;
 		}
 
 		if (mem) {
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux