Messages in this thread | | | Date | Fri, 01 Feb 2002 19:01:56 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH] Re: crc32 and lib.a (was Re: [PATCH] nbd in 2.5.3 does |
| |
Chris Wedgwood wrote: > > On Thu, Jan 31, 2002 at 11:24:10PM +0000, Alan Cox wrote: > > Because 100 4K drivers suddenly becomes 0.5Mb. There are those of > us trying to stuff Linux into embedded devices who if anything > want more configuration options not people taking stuff out. > > Well, I'm more or less in agreement here, especially when working with > small embedded devices which have a few (say 16 or 32) MB of RAM for > EVERYTHING, kernel, userspace AND filesystems. > > However, I wonder if we can't have the linker remove unnecessary and > unreferences objects, functions and variables?
We can. Graham Stoney had all this going against 2.2. See
http://www.google.com/search?q=stoney+ffunction-sections&hl=en&start=10&sa=N http://www.cs.helsinki.fi/linux/linux-kernel/Year-2000/2000-29/0415.html
> What I'd much rather see if this is an issue is: > > bool 'Do you want to customise for a very small system' > > _IF_ the linker can remove things, it would simplify this too --- we > could if a few important places produce code slightly differently to > favour speed over size and not reference various things. Also, the > above option would turn-off inlining as that seems to makie quite a > difference at times (BTW, I'm not sure about this, but it seems gcc > and C99 don't agree with static/extern inline semantics?)
The kernel doesn't link when you compile with -fno-inline because of all the `extern inline' qualifiers. These need to be converted to `static inline'. Jim Houston has a script which does this. See
http://www.uwsg.iu.edu/hypermail/linux/kernel/0201.3/0888.html
It would be rather good if we could get that script run across the tree - no-inline has its uses at times.
- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |