public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ondrej Zary <linux@rainbow-software.org>
To: unlisted-recipients:; (no To-header on input)
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Booting uncompressed kernel image on i386?
Date: Fri, 01 Jul 2005 23:53:18 +0200	[thread overview]
Message-ID: <42C5BB4E.2040000@rainbow-software.org> (raw)
In-Reply-To: <42C13BF1.1040904@rainbow-software.org>

[-- Attachment #1: Type: text/plain, Size: 608 bytes --]

Ondrej Zary wrote:
> Is there an easy way to boot uncompressed kernel (2.6) image instead of 
> the compressed one (bzImage) - using e.g. LILO?
> I'm trying to do that because the decompression takes about 15 seconds 
> on my i386 (it's really an i386 - i386DX/25 :-) The uncompressed kernel 
> is about 1.5MB. I've already tried compressing it using gzip -1 instead 
> of gzip -9 but that didn't make decompression any faster.
> 
Nobody answered, time to look at the code :-)
The attached patch is a quick hack so "make" will create uncompressed 
kernel that can be booted in regular way.


-- 
Ondrej Zary

[-- Attachment #2: uncompressed-kernel.patch --]
[-- Type: text/plain, Size: 1098 bytes --]

--- linux-2.6.12-printserver/scripts/Makefile.lib	2005-06-28 12:45:20.000000000 +0200
+++ linux-2.6.12-pentium/scripts/Makefile.lib	2005-07-01 23:36:30.000000000 +0200
@@ -177,7 +177,7 @@
 # ---------------------------------------------------------------------------
 
 quiet_cmd_gzip = GZIP    $@
-cmd_gzip = gzip -f -9 < $< > $@
+cmd_gzip = cat < $< > $@
 
 # ===========================================================================
 # Generic stuff
--- linux-2.6.12-printserver/arch/i386/boot/compressed/misc.c	2005-06-17 21:48:29.000000000 +0200
+++ linux-2.6.12-pentium/arch/i386/boot/compressed/misc.c	2005-07-01 23:34:55.000000000 +0200
@@ -374,7 +374,15 @@
 
 	makecrc();
 	putstr("Uncompressing Linux... ");
-	gunzip();
+	int i;
+	for (i = 0; i < input_len / WSIZE; i++) {
+		memcpy(window, input_data+i*WSIZE, WSIZE);
+		outcnt = WSIZE;
+		flush_window();
+	}
+	memcpy(window, input_data+i*WSIZE, input_len % WSIZE);
+	outcnt = input_len % WSIZE;
+	flush_window();
 	putstr("Ok, booting the kernel.\n");
 	if (high_loaded) close_output_buffer_if_we_run_high(mv);
 	return high_loaded;

  reply	other threads:[~2005-07-01 21:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-28 12:00 Booting uncompressed kernel image on i386? Ondrej Zary
2005-07-01 21:53 ` Ondrej Zary [this message]
2005-07-01 22:16   ` Wakko Warner
2005-07-01 22:18     ` Ondrej Zary

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=42C5BB4E.2040000@rainbow-software.org \
    --to=linux@rainbow-software.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox