From: Andi Kleen <ak@suse.de>
To: "Jörn Engel" <joern@wohnheim.fh-wedel.de>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [ANNOUNCE] New kernel tree for embedded linux
Date: 07 Apr 2003 21:06:16 +0200 [thread overview]
Message-ID: <p73r88exh3r.fsf@oldwotan.suse.de> (raw)
In-Reply-To: <20030407171037.GB8178@wohnheim.fh-wedel.de.suse.lists.linux.kernel>
Jörn Engel <joern@wohnheim.fh-wedel.de> writes:
> The RATIONALE is that on a ppc with some flash, memory, network and
> nothing much else, I don't feel like parsing MS-DOS partitions,
> offering IPX networking etc., but that junk is still included in
> 2.[45].current - unconditionally. And there is more...
Both dos partitions and IPX are already CONFIG_* options. As "conditional"
as you can get.
If you want to reduce memory bloat I would start with shrinking the
dynamic sized hashtables. That will likely give you several hundred KB
depending on the memory size, much more than you could get from
code size reductions.
Another obvious candidate for memory reduction would be mem_map
(struct page). If you accept some total memory size limit (256MB
with 4k pages) you could replace next_hash and pprev_hash with an
16bit index into mem_map and save 8 bytes per 4k of memory. Possible even
fold count into flags and save another 4 bytes per 4k of memory
For 256MB of memory this would be 768k. That's more than a stripped
down kernel has code in total.
Probably more could be saved by attacking other bloated data structures
in the kernel.
Really there are many targets that have bigger potential pay off
than just code shrinking.
If you want to shrink code:
The TCP/IP stack could be also put on a diet. You likely don't need
an backbone router class routing table manager in your embedded
system. The code is already modularized enough that it could be
replaced with a simple "client" implementation using linked
lists for routing tables with minor changes.
Unfortunately developing it is still quite some work.
-Andi
next parent reply other threads:[~2003-04-07 18:54 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20030407171037.GB8178@wohnheim.fh-wedel.de.suse.lists.linux.kernel>
2003-04-07 19:06 ` Andi Kleen [this message]
2003-04-07 19:40 ` Jörn Engel
2003-04-08 4:38 ` Miles Bader
2003-04-08 7:18 ` Daniel Egger
2003-04-08 8:12 ` Bernd Petrovitsch
2003-04-08 9:36 ` Miles Bader
2003-04-08 8:34 ` David Woodhouse
2003-04-08 9:42 ` Thomas Gleixner
2003-04-08 12:54 ` Jörn Engel
2003-04-08 12:59 ` David Woodhouse
2003-04-07 17:10 Jörn Engel
2003-04-07 20:48 ` Tom Rini
2003-04-08 12:49 ` Jörn Engel
2003-04-08 9:33 ` Jan-Benedict Glaw
2003-04-08 14:20 ` Ville Herva
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=p73r88exh3r.fsf@oldwotan.suse.de \
--to=ak@suse.de \
--cc=joern@wohnheim.fh-wedel.de \
--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
all inboxes | Powered by JetHome®