summaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorBertrand Jacquin <beber@meleeweb.net>2014-08-27 20:31:56 +0930
committerRusty Russell <rusty@rustcorp.com.au>2014-08-27 21:54:12 +0930
commitbeb50df39e91745604ce3cb9dc6a503f39f4383d (patch)
treeeaa6a996228eb532f56f46d1b5004a10062ac4fa /ipc
parent40e42f6a2596bbe757e561d4806fadd924f8c9fd (diff)
downloadlinux-stable-beb50df39e91745604ce3cb9dc6a503f39f4383d.tar.gz
linux-stable-beb50df39e91745604ce3cb9dc6a503f39f4383d.tar.bz2
linux-stable-beb50df39e91745604ce3cb9dc6a503f39f4383d.zip
kbuild: handle module compression while running 'make modules_install'.
Since module-init-tools (gzip) and kmod (gzip and xz) support compressed modules, it could be useful to include a support for compressing modules right after having them installed. Doing this in kbuild instead of per distro can permit to make this kind of usage more generic. This patch add a Kconfig entry to "Enable loadable module support" menu and let you choose to compress using gzip (default) or xz. Both gzip and xz does not used any extra -[1-9] option since Andi Kleen and Rusty Russell prove no gain is made using them. gzip is called with -n argument to avoid storing original filename inside compressed file, that way we can save some more bytes. On a v3.16 kernel, 'make allmodconfig' generated 4680 modules for a total of 378MB (no strip, no sign, no compress), the following table shows observed disk space gain based on the allmodconfig .config : | time | +-------------+-----------------+ | manual .ko | make | size | percent | compression | modules_install | | gain +-------------+-----------------+------+-------- - | | 18.61s | 378M | GZIP | 3m16s | 3m37s | 102M | 73.41% XZ | 5m22s | 5m39s | 77M | 79.83% The gain for restricted environnement seems to be interesting while uncompress can be time consuming but happens only while loading a module, that is generally done only once. This is fully compatible with signed modules while the signed module is compressed. module-init-tools or kmod handles decompression and provide to other layer the uncompressed but signed payload. Reviewed-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Bertrand Jacquin <beber@meleeweb.net> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions