Date: Sunday, December 22, 2013 @ 20:37:03 Author: dreisner Revision: 202622
upgpkg: mkinitcpio 16-2 - backport fix lz4 support Added: mkinitcpio/trunk/0001-Add-l-flag-when-using-lz4-compression.patch Modified: mkinitcpio/trunk/PKGBUILD --------------------------------------------------+ 0001-Add-l-flag-when-using-lz4-compression.patch | 61 +++++++++++++++++++++ PKGBUILD | 12 +++- 2 files changed, 70 insertions(+), 3 deletions(-) Added: 0001-Add-l-flag-when-using-lz4-compression.patch =================================================================== --- 0001-Add-l-flag-when-using-lz4-compression.patch (rev 0) +++ 0001-Add-l-flag-when-using-lz4-compression.patch 2013-12-22 19:37:03 UTC (rev 202622) @@ -0,0 +1,61 @@ +From 2ce3a416c8714adedc3117e5247e6da364ddebc9 Mon Sep 17 00:00:00 2001 +From: Dave Reisner <[email protected]> +Date: Sun, 22 Dec 2013 14:11:37 -0500 +Subject: [mkinitcpio] [PATCH] Add -l flag when using lz4 compression + +This isn't documented, but it's needed since the kernel lz4 support is +based on the original streaming format and not the newer default. Use +-l to force the legacy codec. + +Fixup lsinitcpio to support the older format, and, add a warning when +the newer format is detected. Who knows when this will be "resolved" ... + +Upstream discussion: https://code.google.com/p/lz4/issues/detail?id=102 +--- + lsinitcpio | 15 +++++++++++---- + mkinitcpio | 3 +++ + 2 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/lsinitcpio b/lsinitcpio +index 10cd663..9d98d57 100755 +--- a/lsinitcpio ++++ b/lsinitcpio +@@ -91,10 +91,17 @@ detect_filetype() { + return + fi + +- if [[ $(hexdump -n 4 -e '"%x"' "$1") == '184d2204' ]]; then +- echo 'lz4' +- return +- fi ++ case $(hexdump -n 4 -e '"%x"' "$1") in ++ 184d2204) ++ error 'Newer lz4 stream format detected! This may not boot!' ++ echo 'lz4' ++ return ++ ;; ++ 184c2102) ++ echo 'lz4 -l' ++ return ++ ;; ++ esac + + if [[ $(hexdump -n 3 -e '"%c"' "$1") == 'BZh' ]]; then + echo 'bzip2' +diff --git a/mkinitcpio b/mkinitcpio +index cb94d62..42abde7 100755 +--- a/mkinitcpio ++++ b/mkinitcpio +@@ -202,6 +202,9 @@ build_image() { + xz) + COMPRESSION_OPTIONS+=' --check=crc32' + ;; ++ lz4) ++ COMPRESSION_OPTIONS+=' -l' ++ ;; + esac + + cpio_opts=('-0' '-o' '-H' 'newc') +-- +1.8.5.2 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-12-22 17:27:11 UTC (rev 202621) +++ PKGBUILD 2013-12-22 19:37:03 UTC (rev 202622) @@ -4,7 +4,7 @@ pkgname=mkinitcpio pkgver=16 -pkgrel=1 +pkgrel=2 pkgdesc="Modular initramfs image creation utility" arch=('any') url="https://projects.archlinux.org/mkinitcpio.git/" @@ -17,11 +17,17 @@ 'lz4: Use lz4 compression for the initramfs image' 'mkinitcpio-nfs-utils: Support for root filesystem on NFS') backup=('etc/mkinitcpio.conf') -source=("ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig}) +source=("ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig} + 0001-Add-l-flag-when-using-lz4-compression.patch) install=mkinitcpio.install sha256sums=('10821e533eb1ca51a9d3c1d06d8999c08a6151910a9a6029a45ff1638e9228a2' - 'SKIP') + 'SKIP' + 'e8dd2d3fb29e6c41bed53be2f8659a7e5daeae3c9495d8527b6b938787c54703') +prepare() { + patch -d "$pkgname-$pkgver" -Np1 <"$srcdir/0001-Add-l-flag-when-using-lz4-compression.patch" +} + package() { make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install }
