All of lore.kernel.org
 help / color / mirror / Atom feed
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


  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
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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.