Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752342AbdIVVzh (ORCPT ); Fri, 22 Sep 2017 17:55:37 -0400 Received: from mail-pg0-f54.google.com ([74.125.83.54]:48510 "EHLO mail-pg0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752083AbdIVVzf (ORCPT ); Fri, 22 Sep 2017 17:55:35 -0400 X-Google-Smtp-Source: AOwi7QA4uoVxgHVtyC3mIfgCoDJBXBRtwBhXf672JiDilRUpmI995RBDexGmbAJhdLKeR/37Ez295g== From: Daniel Rosenberg To: Phillip Lougher , linux-kernel@vger.kernel.org Cc: adrien@schischi.me, Daniel Rosenberg Subject: [PATCH 0/5] Squashfs Whitelist and Compression Threshold Date: Fri, 22 Sep 2017 14:55:03 -0700 Message-Id: <20170922215508.73407-1-drosen@google.com> X-Mailer: git-send-email 2.14.1.821.g8fa685d3b7-goog Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1709 Lines: 38 These patches contain several optimizations to Squashfs. ll_rw_block is replaced with submit_bio. readpages is implemented to support asynchronous readahead. Uncompressed file reads are optimized, no longer requiring the entire block to be read if the block doesn't need to be decompressed, which greatly improves random read speeds in uncompressed files. There is a separate set of patches to the userspace tools adding a whitelist of files to not compress, and an ability to set a compression threshold to avoid compressing files where there isn't a significant advantage made by compressing. Adrien Schildknecht (5): Squashfs: remove the FILE_CACHE option Squashfs: refactor page_actor Squashfs: replace buffer_head with BIO Squashfs: implement .readpages() Squashfs: optimize reading uncompressed data fs/squashfs/Kconfig | 28 --- fs/squashfs/Makefile | 3 +- fs/squashfs/block.c | 547 ++++++++++++++++++++++++++++++++----------- fs/squashfs/cache.c | 73 +++--- fs/squashfs/decompressor.c | 55 +++-- fs/squashfs/file.c | 137 ++++++++--- fs/squashfs/file_cache.c | 38 --- fs/squashfs/file_direct.c | 240 +++++++++---------- fs/squashfs/lz4_wrapper.c | 29 +-- fs/squashfs/lzo_wrapper.c | 40 +--- fs/squashfs/page_actor.c | 175 +++++++++----- fs/squashfs/page_actor.h | 84 +++---- fs/squashfs/squashfs.h | 9 +- fs/squashfs/squashfs_fs_sb.h | 2 +- fs/squashfs/super.c | 7 + fs/squashfs/xz_wrapper.c | 15 +- fs/squashfs/zlib_wrapper.c | 14 +- 17 files changed, 876 insertions(+), 620 deletions(-) delete mode 100644 fs/squashfs/file_cache.c -- 2.14.1.821.g8fa685d3b7-goog