On Wed, 18 Jun 2008, Adrian Bunk wrote: > On Wed, Jun 18, 2008 at 09:20:22AM +0100, David Woodhouse wrote: > > On Wed, 2008-06-18 at 09:47 +0300, Gilad Ben-Yossef wrote: > > > This may sound like a stupid question, but why are you compiling the > > > modules statically? > > > > I wondered that. > > > > One potential reason to avoid modules is that they waste RAM -- you have > > to allocate an integral number of pages for each one, which means an > > average of 2KiB wasted for each module you load. Although that isn't > > much, it's not zero either. It might be possible to optimise that by > > 'packing' module allocations, if you're careful about it. > >... > > So the only real reason I can see to avoid modules in the _current_ > > kernel would be the wasted RAM, which should be something we can > > address. > >... > > You miss the size increase imposed by CONFIG_MODULES=y. > > E.g. setting CONFIG_MODULES=y in the arm collie_defconfig will > increase the size of vmlinux by 14% (sic). > > I haven't investigated why it takes that much space, but stuff like > kernel/module.o taking 23kB and each EXPORT_SYMBOL requiring a few > bytes simply cannot be completely eliminated. Sounds like we need a tool that strips out the unneeded symbols, given a list of modules? With kind regards, Geert Uytterhoeven Software Architect Sony Techsoft Centre The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium Phone: +32 (0)2 700 8453 Fax: +32 (0)2 700 8622 E-mail: Geert.Uytterhoeven@xxxxxxxxxxx Internet: http://www.sony-europe.com/ Sony Technology and Software Centre Europe A division of Sony Service Centre (Europe) N.V. Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium VAT BE 0413.825.160 · RPR Brussels Fortis 293-0376800-10 GEBA-BE-BB