From: Yongpeng Yang <[email protected]>
This patchset adds inline extent format support to f2fs userspace tools,
complementing the kernel-side inline extent feature.
The inline extent format stores block address mappings as compact extent
entries directly in the inode's data block address area (i_addr[]),
identified by dual magic numbers. This provides O(log n) lookup via
binary search and reduces space consumption for files with contiguous
block allocations.
Patch 1: fsck/dump core support -- inline extent operations (lookup,
insert, merge, split, truncate, format conversion),
integration with datablock_addr(), set_data_blkaddr(), and
fsck sanity checks.
Patch 2: Build system -- add --disable-inline-extent configure option,
wire iextent.c/iextent.h into fsck build, define
HAVE_INLINE_EXTENT macro.
Patch 3: f2fs_io tool -- add "extent" flag support for setflags/
clearflags/getflags commands.
Yongpeng Yang (3):
fsck: add inline extent format support
build: add inline extent build support
f2fs_io: add support to clear/set extent flags
configure.ac | 10 +
fsck/Makefile.am | 4 +-
fsck/dump.c | 4 +-
fsck/fsck.c | 38 ++-
fsck/iextent.c | 738 ++++++++++++++++++++++++++++++++++++++++
fsck/iextent.h | 100 ++++++
fsck/mount.c | 59 +++-
fsck/node.c | 30 ++
fsck/node.h | 18 +
tools/f2fs_io/f2fs_io.c | 16 +-
tools/f2fs_io/f2fs_io.h | 3 +
11 files changed, 1001 insertions(+), 19 deletions(-)
create mode 100644 fsck/iextent.c
create mode 100644 fsck/iextent.h
--
2.43.0
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel