From: Willy Tarreau <w@1wt.eu>
To: Steve Brokenshire <sbrokenshire@xestia.co.uk>
Cc: linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org
Subject: Re: [PATCH] Compress kernel modules on installation.
Date: Mon, 25 Feb 2008 23:21:38 +0100 [thread overview]
Message-ID: <20080225222137.GY8953@1wt.eu> (raw)
In-Reply-To: <20080225214209.a3f79327.sbrokenshire@xestia.co.uk>
On Mon, Feb 25, 2008 at 09:42:09PM +0000, Steve Brokenshire wrote:
> Hi,
>
> (I've sent this to the linux-kbuild and linux-kernel lists as this
> patch modifies the Makefile.modinst file. I also don't subscribe to the
> linux-kbuild and linux-kernel mailing lists so can I have any replies
> CC'ed to me please)
>
> This patch allows kernel modules to be compressed when 'make
> modules_install' is run after being copied to
> the /lib/module/<version>/<...> directory which is useful if you have
> module-init-tools installed with --enable-zlib. This patch adds an
> option (MODULE_COMPRESS) to the kernel configuration file (specifically
> init/Kconfig) so that the kernel modules will compressed if
> MODULE_COMPRESS is set.
>
> When MODULE_COMPRESS is set the output of 'make modules_install' will
> go as the following:
>
> INSTALL drivers/fs/xfs/xfs.ko
> COMPRESS drivers/fs/xfs/xfs.ko
> INSTALL drivers/fs/fat/fat.ko
> COMPRESS drivers/fs/fat/fat.ko
> ...
>
> I've tested my patch on kernel versions 2.6.24.2, 2.6.24-git12, 2.6.23.14 and
> 2.6.19 and they compile, install and compress into the respective
> module directories without any errors.
>
> I've also tested this with the uvcvideo (linux-uvc) kernel module (from
> the SVN branch and with kernel versions 2.6.24.2, 2.6.24-git12, 2.6.23.14 and
> 2.6.19) as that uses Kbuild properly when installing the module and
> after installing the uvcvideo the module is then compressed.
> Unfortunately, I couldn't find any other kernel modules which used the
> Kbuild system for installing their kernel modules. :(
>
> I've included include/config/auto.conf in Makefile.modinst so that it
> can check if MODULE_COMPRESS is set when installing the kernel modules.
>
> Unfortunately when I ran mkinitrd (CentOS version) to create the initrd
> image to go with the kernel, I get errors saying that certain kernel
> modules don't exist despite the fact they do actually exist. When I
> pass --allow-missing to mkinitrd, it seems to go fine but when booting
> up with the system with the new initrd image I get error messages
> saying that the modules don't exist.
>
> A workaround is to compile the modules, don't have MODULE_COMPRESS set
> in .config, install the modules, run mkinitrd and copy it to /boot, set
> MODULE_COMPRESS in .config and then install the modules again but
> compressed.
>
> That's about it really. The only showstopper I feel is mkinitrd not
> working properly with the compressed kernel modules.
Have you tried keeping the module names intact (.ko, not .ko.gz) ?
It's what I was doing with modutils in 2.4 and what I'm still doing
with module-init-tools in 2.6. While I don't particularly use mkinitrd,
I think that keeping the name intact is preferable and should help.
Regards,
Willy
next prev parent reply other threads:[~2008-02-25 22:21 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-25 21:42 [PATCH] Compress kernel modules on installation Steve Brokenshire
2008-02-25 22:17 ` Oleg Verych
2008-02-25 22:19 ` Willy Tarreau
2008-02-25 22:32 ` Oleg Verych
2008-02-25 23:21 ` Willy Tarreau
2008-02-25 22:21 ` Willy Tarreau [this message]
2008-02-26 9:14 ` Adrian Bunk
2008-02-26 10:22 ` Willy Tarreau
2008-02-26 12:30 ` Adrian Bunk
2008-02-26 13:04 ` Willy Tarreau
2008-02-26 11:28 ` Sam Ravnborg
2008-04-01 19:42 ` Steve Brokenshire
2008-12-26 19:30 ` Jan Engelhardt
2008-12-26 19:48 ` Sam Ravnborg
2008-12-26 19:50 ` Jan Engelhardt
2008-12-26 22:57 ` Sam Ravnborg
2008-12-26 23:12 ` Jan Engelhardt
2009-01-18 21:04 ` Sam Ravnborg
2009-01-18 21:09 ` Arjan van de Ven
2009-01-18 21:15 ` Michael Tokarev
2009-01-18 21:18 ` Jan Engelhardt
2009-01-18 21:25 ` Michael Tokarev
2009-01-19 20:21 ` Jan Engelhardt
2009-01-20 3:30 ` Steve Brokenshire
2009-01-25 16:51 ` Steve Brokenshire
2009-01-25 18:02 ` Jan Engelhardt
2009-01-26 21:39 ` Steve Brokenshire
-- strict thread matches above, loose matches on Subject: below --
2008-12-26 20:23 Roland
2008-12-26 21:09 ` Jan Engelhardt
2008-12-26 23:10 ` Roland
2008-12-26 23:28 ` Bill Davidsen
2008-12-26 22:02 ` david
2008-12-26 21:15 ` Jan Engelhardt
2008-12-26 22:28 ` david
2008-12-26 23:23 ` Jan Engelhardt
2008-12-27 0:58 ` david
2009-01-01 8:27 ` Willy Tarreau
2008-12-26 23:49 Roland
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=20080225222137.GY8953@1wt.eu \
--to=w@1wt.eu \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sbrokenshire@xestia.co.uk \
/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