[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1359179447-31118-1-git-send-email-kyungsik.lee@lge.com>
Date: Sat, 26 Jan 2013 14:50:43 +0900
From: Kyungsik Lee <kyungsik.lee@....com>
To: Russell King <linux@....linux.org.uk>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, Michal Marek <mmarek@...e.cz>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-kbuild@...r.kernel.org, x86@...nel.org
Cc: Nitin Gupta <nitingupta910@...il.com>,
Richard Purdie <rpurdie@...nedhand.com>,
Josh Triplett <josh@...htriplett.org>,
Joe Millenbach <jmillenbach@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Albin Tonnerre <albin.tonnerre@...e-electrons.com>,
hyojun.im@....com, chan.jeong@....com, gunho.lee@....com,
minchan.kim@....com, namhyung.kim@....com,
raphael.andy.lee@...il.com, Kyungsik Lee <kyungsik.lee@....com>
Subject: [RFC PATCH 0/4] Add support for LZ4-compressed kernels
This patchset is for supporting LZ4 compressed kernel and initial ramdisk on
the x86 and ARM architectures.
According to http://code.google.com/p/lz4/, LZ4 is a very fast lossless
compression algorithm and also features an extremely fast decoder.
Kernel Decompression APIs are based on implementation by Yann Collet
(http://code.google.com/p/lz4/source/checkout).
De/compression Tools are also provided from the site above.
The initial test result on ARM(v7) based board shows that the size of kernel
with LZ4 compressed is 8% bigger than LZO compressed but the decompressing
speed is faster(especially under the enabled unaligned memory access).
Test: 3.4 based kernel built with many modules
Uncompressed kernel size: 13MB
lzo: 6.3MB, 301ms
lz4: 6.8MB, 251ms(167ms, with enabled unaligned memory access)
It seems that it’s worth trying LZ4 compressed kernel image or ramdisk
for making the kernel boot more faster.
Thanks,
Kyungsik
Kyungsik Lee (4):
decompressors: add lz4 decompressor module
lib: add support for LZ4-compressed kernels
arm: add support for LZ4-compressed kernels
x86: add support for LZ4-compressed kernels
arch/arm/Kconfig | 1 +
arch/arm/boot/compressed/.gitignore | 1 +
arch/arm/boot/compressed/Makefile | 3 +-
arch/arm/boot/compressed/decompress.c | 4 +
arch/arm/boot/compressed/piggy.lz4.S | 6 +
arch/x86/Kconfig | 1 +
arch/x86/boot/compressed/Makefile | 5 +-
arch/x86/boot/compressed/misc.c | 4 +
include/linux/decompress/unlz4.h | 10 ++
include/linux/lz4.h | 62 +++++++++++
init/Kconfig | 13 ++-
lib/Kconfig | 7 ++
lib/Makefile | 2 +
lib/decompress.c | 5 +
lib/decompress_unlz4.c | 199 ++++++++++++++++++++++++++++++++++
lib/lz4/Makefile | 1 +
lib/lz4/lz4_decompress.c | 199 ++++++++++++++++++++++++++++++++++
lib/lz4/lz4defs.h | 129 ++++++++++++++++++++++
scripts/Makefile.lib | 5 +
usr/Kconfig | 9 ++
20 files changed, 663 insertions(+), 3 deletions(-)
create mode 100644 arch/arm/boot/compressed/piggy.lz4.S
create mode 100644 include/linux/decompress/unlz4.h
create mode 100644 include/linux/lz4.h
create mode 100644 lib/decompress_unlz4.c
create mode 100644 lib/lz4/Makefile
create mode 100644 lib/lz4/lz4_decompress.c
create mode 100644 lib/lz4/lz4defs.h
--
1.8.0.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists