|
|
Log in / Subscribe / Register

erofs: support compressed fragments data

From:  Yue Hu <zbestahu-AT-gmail.com>
To:  xiang-AT-kernel.org, chao-AT-kernel.org
Subject:  [RFC PATCH v3 0/2] erofs: support compressed fragments data
Date:  Mon, 05 Sep 2022 11:20:06 +0800
Message-ID:  <cover.1662347031.git.huyue2@coolpad.com>
Cc:  linux-erofs-AT-lists.ozlabs.org, linux-kernel-AT-vger.kernel.org, zhangwen-AT-coolpad.com, zbestahu-AT-gmail.com, Yue Hu <huyue2-AT-coolpad.com>
Archive-link:  Article

From: Yue Hu <huyue2@coolpad.com>

This feature can merge tail of per-file or the whole files into a
special inode to achieve greater compression ratio.

Meanwhile, also add a interlaced uncompressed data layout support for
compressed files since fragments feature (and later) can use it.

mkfs v5: https://lore.kernel.org/all/cover.1661687617.git.huyue2@c...

changes from v2:
 - enhance the condition to check if pcluster is interlaced or not;
 - no typo.

changes from v1:
 - fix a compiling error without CONFIG_EROFS_FS_ZIP, reported by kernel test
   robot <lkp@intel.com>;
 - introduce the term 'interlaced' for patch 1/2 suggested by Xiang;
 - fix packed inode failure path when read super pointed out by Xiang;
 - use kmap_local_page instead of kmap_atomic pointed out by Xiang;
 - use a simpler way to avoid call read fragment data twice suggested by Xiang;
 - update commit message change.

Yue Hu (2):
  erofs: support interlaced uncompressed data for compressed files
  erofs: support on-disk compressed fragments data

 fs/erofs/compress.h     |  3 +++
 fs/erofs/decompressor.c | 12 +++++----
 fs/erofs/erofs_fs.h     | 28 ++++++++++++++-----
 fs/erofs/internal.h     | 16 ++++++++---
 fs/erofs/super.c        | 15 +++++++++++
 fs/erofs/sysfs.c        |  2 ++
 fs/erofs/zdata.c        | 60 +++++++++++++++++++++++++++++++++++++++--
 fs/erofs/zdata.h        |  3 +++
 fs/erofs/zmap.c         | 33 ++++++++++++++++++++++-
 9 files changed, 155 insertions(+), 17 deletions(-)

-- 
2.17.1



Copyright © 2022, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds