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

Reply via email to