LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH v3 0/3] erofs: iomap support for uncompressed cases
@ 2021-08-05  0:35 Gao Xiang
  2021-08-05  0:35 ` [PATCH v3 1/3] erofs: iomap support for non-tailpacking DIO Gao Xiang
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Gao Xiang @ 2021-08-05  0:35 UTC (permalink / raw)
  To: linux-erofs
  Cc: linux-fsdevel, nvdimm, LKML, Darrick J. Wong, Chao Yu, Liu Bo,
	Joseph Qi, Liu Jiang, Huang Jianan, Tao Ma, Gao Xiang

Hi folks,

This patchset mainly adds EROFS iomap support for uncompressed cases
I've planed for the next merge window.

The first 2 patches mainly deal with 2 new cases:
1) Direct I/O is useful in certain scenarios for uncompressed files.
For example, double pagecache can be avoid by direct I/O when loop
device is used for uncompressed files containing upper layer
compressed filesystem.

2) DAX is quite useful for some container use cases in order to save
guest memory extremely by using the minimal lightweight EROFS image.
BTW, a bit more off this iomap topic, chunk-deduplicated regfile
support is almost available (blob data support) for multi-layer
container image use cases (aka. called RAFS v6, nydus [1] will support
RAFS v6 (EROFS-compatible format) in the future and form a unified
high-performance container image solution, which will be announced
formally independently), which is also a small independent update.

The last patch relies on the previous iomap core update in order to
convert tail-packing inline files into iomap, thus all uncompressed
cases are handled with iomap properly.

Comments are welcome. Thanks for your time on reading this!

Thanks,
Gao Xiang

[1] https://github.com/dragonflyoss/image-service

changes since v2 (Chao):
 - use filemap_read() instead;
 - slightly adjust the order of a hunk in erofs_fill_inode();
 - update brief documentation for dax option;
 - use fs_put_dax() directly w/o NULL check;
 - add a missing error handling for erofs_get_meta_page().

Gao Xiang (2):
  erofs: dax support for non-tailpacking regular file
  erofs: convert all uncompressed cases to iomap

Huang Jianan (1):
  erofs: iomap support for non-tailpacking DIO

 Documentation/filesystems/erofs.rst |   2 +
 fs/erofs/Kconfig                    |   1 +
 fs/erofs/data.c                     | 338 ++++++++++++----------------
 fs/erofs/inode.c                    |   9 +-
 fs/erofs/internal.h                 |   4 +
 fs/erofs/super.c                    |  59 ++++-
 6 files changed, 213 insertions(+), 200 deletions(-)

-- 
2.24.4


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-08-06  9:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-05  0:35 [PATCH v3 0/3] erofs: iomap support for uncompressed cases Gao Xiang
2021-08-05  0:35 ` [PATCH v3 1/3] erofs: iomap support for non-tailpacking DIO Gao Xiang
2021-08-05  0:36 ` [PATCH v3 2/3] erofs: dax support for non-tailpacking regular file Gao Xiang
2021-08-05  3:01   ` Chao Yu
2021-08-05  3:24     ` Gao Xiang
2021-08-06  9:12       ` Chao Yu
2021-08-05  0:36 ` [PATCH v3 3/3] erofs: convert all uncompressed cases to iomap Gao Xiang
2021-08-05  3:02   ` Chao Yu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).