[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250422123612.261764-1-lihongbo22@huawei.com>
Date: Tue, 22 Apr 2025 12:36:08 +0000
From: Hongbo Li <lihongbo22@...wei.com>
To: <xiang@...nel.org>, <chao@...nel.org>, <huyue2@...lpad.com>,
<jefflexu@...ux.alibaba.com>
CC: <linux-erofs@...ts.ozlabs.org>, <linux-kernel@...r.kernel.org>,
<lihongbo22@...wei.com>
Subject: [PATCH RFC 0/4] erofs-utils: Add --meta_fix and --meta_only format options
In this patchset, we have added two formatting options --meta_fix and
--meta_only to extend the ability of EROFS. In the case of using OBS,
we can convert the directory tree structure from OBS into the erofs
image and implement on-demand loading logic based on this. Since OBS
objects are often large, we need to separate the metadata area from
the data area, which is the reason we introduce the --meta_fix option.
To accelerate the formatting process, we can skip the formatting of
the raw data by adding --meta_only option.
A simple usage example is as follows:
1. Build one xattr with OBS key in s3fs.
2. mkfs.erofs --meta_fix --meta_only data.img /mnt/s3fs to format
3. Implement the loading logic in kernel or userspace.
Based on the above logic, we can easily expose the directory tree
from OBS to users in the form of the EROFS file system and implement
on-demand data loading for large OBS objects.
Hongbo Li (4):
erofs-utils: lib: introduce --meta_fix format option
erofs-utils: lib: Implement the main logic for --meta_fix option
erofs-utils: lib: add --meta_only format option
erofs-utils: lib: remove the compile warning
include/erofs/blobraw.h | 29 +++++++++
include/erofs/config.h | 2 +
lib/Makefile.am | 3 +-
lib/blobraw.c | 129 ++++++++++++++++++++++++++++++++++++++++
lib/decompress.c | 3 +
lib/inode.c | 6 ++
mkfs/main.c | 49 +++++++++++++++
7 files changed, 220 insertions(+), 1 deletion(-)
create mode 100755 include/erofs/blobraw.h
create mode 100755 lib/blobraw.c
--
2.22.0
Powered by blists - more mailing lists