Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1105052imu; Fri, 9 Nov 2018 11:01:04 -0800 (PST) X-Google-Smtp-Source: AJdET5fQSn0JuO0vvGbVFyRRu6i0Sxrxwr0gTynO/f+QzW7RKkD+F/2UizcZVAsHbS61nkXztwZX X-Received: by 2002:a63:9b11:: with SMTP id r17mr8564477pgd.416.1541790064179; Fri, 09 Nov 2018 11:01:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541790064; cv=none; d=google.com; s=arc-20160816; b=rlcmfuKZ6waXHAmh6XeKrJKO550HIbKX1G8SP1tGeQlKpQpZ3Ac70RTMeAn/WMtUjb itqAcwEAlkHEnl7lidaAFyMs+7BVhpBvasnTSlK1/yh2MCPGtC/9/hjp3jwvDFifoZOf RqIUMLRtqSnwoLWJGq0i+4Xv8y5BAOtyAcVUNVmjUCNaJeBswaAaf0Xp8tNhAmx/KnX1 5Lmhw7ZiDlyAfvYo5qfNhkseVsTqa0cqx4qxO7Hew0lW8ezV+ZAEhJT2olVNH3Cvq1kY fbC4msosCr6mnWguYx3ymWr7emeekuesc9C3Z58hVE8FBLphpbW/dUQ7ItYW9DYVRqlO gsNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:content-transfer-encoding :content-disposition:mime-version:message-id:subject:to:from:date; bh=sa6dGlIRvma5eSnYzmNj6k3ZwTH1293TPpM+zMx/xf4=; b=K8rQ7MIzzC+evqLknf6W43rt+oZ1p1Z018B5oJh7/Bru0ZXCzoK8CVXx67/hA4q+I8 lcuZlBPkHgCjiwA3cOYjtUl5RNevHLGSrodpvFRNcTI7OjttLgH7HklXOwk5MP18CxMN /+0c1SldPkhkDFXHRg9uvFJhOs7gY2T7oKXV6TnUn65BAitv5PWhNKaNWdwNEamlZ3cp AvH1ws+AtfzYlPRiWq9V1XWJQ/b8ba01qy4NtAvDN7N1oSII97Y3Pe1fOlj6zrqXypsg iV1PdtAzaOmc8XNZUVJWmUPAJNZGztPcTeAUosgCEjMZab/8Kbe6IDwUHiq+dCOGw53A QgOA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v7-v6si8142235plp.420.2018.11.09.11.00.48; Fri, 09 Nov 2018 11:01:04 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728696AbeKJEmT (ORCPT + 99 others); Fri, 9 Nov 2018 23:42:19 -0500 Received: from tartarus.angband.pl ([54.37.238.230]:51088 "EHLO tartarus.angband.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728162AbeKJEmR (ORCPT ); Fri, 9 Nov 2018 23:42:17 -0500 Received: from kilobyte by tartarus.angband.pl with local (Exim 4.89) (envelope-from ) id 1gLC0X-000503-84; Fri, 09 Nov 2018 19:59:53 +0100 Date: Fri, 9 Nov 2018 19:59:53 +0100 From: Adam Borowski To: linux-kernel@vger.kernel.org, Nick Terrell , Russell King , Geert Uytterhoeven , linux-m68k@lists.linux-m68k.org, Ralf Baechle , Paul Burton , James Hogan , linux-mips@linux-mips.org, Jonas Bonn , Stefan Kristiansson , Stafford Horne , openrisc@lists.librecores.org, "James E.J. Bottomley" , Helge Deller , linux-parisc@vger.kernel.org, Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , linuxppc-dev@lists.ozlabs.org, Martin Schwidefsky , Heiko Carstens , linux-s390@vger.kernel.org, Yoshinori Sato , Rich Felker , linux-sh@vger.kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , x86@kernel.org, Chris Zankel , Max Filippov , linux-xtensa@linux-xtensa.org Subject: [PATCH 0/17] Kernel compression: add ZSTD, remove LZMA1 and BZIP2 Message-ID: <20181109185953.xwyelyqnygbskkxk@angband.pl> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit X-Junkbait: aaron@angband.pl, zzyx@angband.pl User-Agent: NeoMutt/20170113 (1.7.2) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: kilobyte@angband.pl X-SA-Exim-Scanned: No (on tartarus.angband.pl); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi! As new compressors get invented, they tend to find their way into the kernel, yet we never prune superseded ones. It's time to do so. In particular, BZIP2 is drastically slower than other compressors we have, even when they achieve smaller sizes. It takes more memory, too. And, BZIP2 is not used anywhere else in the kernel -- just for booting the kernel itself and the initrd. Thus, we can drop it from the tree completely, making Linus happier by around 900 lines. LZMA1 is redundant with XZ (LZMA2), and unlike the latter, it uses its own copy of code that's not shared with anything else (some drivers use XZ). Let's drop it as well. Some bootloaders can use it thus let's keep the Kconfig option, but I left no piece of code inside the kernel itself. On the other hand, Nick Terrell has a couple of patches adding ZSTD support (using code already in use in multiple pieces around the kernel). ZSTD is strong and fast, obsoleting all mid-range compressors. As the removal of BZIP2 and LZMA1 would be hopelessly entangled with this addition, I'm resending Nick's patches here. I've been booting using them since Oct'17 on amd64 (kernel+initrd), armhf and arm64 (initrd) without issues, other folks tested various other architectures as well. Thus, I'd recommend people to use: * XZ for most machines * ZSTD where speed is important * maaaaybe LZ4 is some special cases (grub and u-boot are ridiculously slow at reading, making fast but weak decompressors a net loss. On the other hand, XZ decompresses pretty fast but is very slow at compress time, making ZSTD preferred for rapid devel cycles.) * we can't get rid of GZIP in foreseable future * LZO is obsolete but is used elsewhere in the kernel Total: 69 files changed, 518 insertions(+), 1785 deletions(-) Not sure whose tree this patchset should go through. I'm also not sure how finely split into commits you want the arch bits be; I included defconfig bits all together, yet separated code changes per-arch. Meow! -- ⢀⣴⠾⠻⢶⣦⠀ ⣾⠁⢠⠒⠀⣿⡁ A dumb species has no way to open a tuna can. ⢿⡄⠘⠷⠚⠋⠀ A smart species invents a can opener. ⠈⠳⣄⠀⠀⠀⠀ A master species delegates.