[WIP] [PATCH 00/12] erofs-utils: introduce fuse implementation
Gao Xiang
hsiangkao at aol.com
Sat Oct 17 16:16:09 AEDT 2020
Hi all,
This patchset is based on the original patch
https://lore.kernel.org/r/20190818135923.27444-1-blucerlee@gmail.com
and several fixes / compression support by Huang Jianan
https://lore.kernel.org/r/20201015133959.61007-1-huangjianan@oppo.com
with my additional 9 incremental patches to refactor my current
development status, which will be folded into original patches
in the next WIP version since the fuse approach hasn't been
merged into dev branch yet.
To summarize the benefits of erofsfuse, I think it would be:
- erofs images can be supported on various platforms;
- an independent unpack tool can be developed based on this;
- new on-disk feature can be iterated, verified effectively.
Any feedback or/and follow-on development/cleanup is welcomed.
(we still have a lot to do for the entire erofsfuse codebase...)
Thanks,
Gao Xiang
Gao Xiang (9):
erofs-utils: fuse: adjust larger extent handling
erofs-utils: fuse: use proper expression about inode size
erofs-utils: fuse: drop ofs_out
erofs-utils: fuse: refuse a undefined shifted cluster behavior
erofs-utils: fuse: drop z_erofs_shifted_transform()
erofs-utils: fuse: rename ofs_head and outputsize
erofs-utils: fuse: cleanup erofs_read_data_compression()
erofs-utils: fuse: move up mpage in struct erofs_map_blocks
erofs-utils: fuse: fix up source headers
Huang Jianan (2):
erofs-utils: fuse: support read special file
erofs-utils: fuse: support read compressed file
Li Guifu (1):
erofs-utils: introduce fuse implementation
Makefile.am | 2 +-
README | 28 ++-
configure.ac | 3 +-
fuse/Makefile.am | 18 ++
fuse/decompress.c | 84 ++++++++
fuse/decompress.h | 42 ++++
fuse/dentry.c | 129 ++++++++++++
fuse/dentry.h | 43 ++++
fuse/disk_io.c | 72 +++++++
fuse/disk_io.h | 21 ++
fuse/getattr.c | 65 ++++++
fuse/getattr.h | 15 ++
fuse/init.c | 118 +++++++++++
fuse/init.h | 24 +++
fuse/logging.c | 81 ++++++++
fuse/logging.h | 55 ++++++
fuse/main.c | 171 ++++++++++++++++
fuse/namei.c | 242 +++++++++++++++++++++++
fuse/namei.h | 22 +++
fuse/open.c | 22 +++
fuse/open.h | 15 ++
fuse/read.c | 214 ++++++++++++++++++++
fuse/read.h | 17 ++
fuse/readir.c | 123 ++++++++++++
fuse/readir.h | 17 ++
fuse/zmap.c | 417 +++++++++++++++++++++++++++++++++++++++
include/erofs/defs.h | 16 ++
include/erofs/internal.h | 79 ++++++++
include/erofs_fs.h | 4 +
29 files changed, 2156 insertions(+), 3 deletions(-)
create mode 100644 fuse/Makefile.am
create mode 100644 fuse/decompress.c
create mode 100644 fuse/decompress.h
create mode 100644 fuse/dentry.c
create mode 100644 fuse/dentry.h
create mode 100644 fuse/disk_io.c
create mode 100644 fuse/disk_io.h
create mode 100644 fuse/getattr.c
create mode 100644 fuse/getattr.h
create mode 100644 fuse/init.c
create mode 100644 fuse/init.h
create mode 100644 fuse/logging.c
create mode 100644 fuse/logging.h
create mode 100644 fuse/main.c
create mode 100644 fuse/namei.c
create mode 100644 fuse/namei.h
create mode 100644 fuse/open.c
create mode 100644 fuse/open.h
create mode 100644 fuse/read.c
create mode 100644 fuse/read.h
create mode 100644 fuse/readir.c
create mode 100644 fuse/readir.h
create mode 100644 fuse/zmap.c
--
2.24.0
More information about the Linux-erofs
mailing list