On 2023/6/2 17:37, Yue Hu wrote:
From: Yue Hu <[email protected]> Since dedupe feature is also using the same feature bit as fragments. Meanwhile, add missing dedupe feature to feature_lists[]. Fixes: a6336feefe37 ("erofs-utils: dump: support fragments") Signed-off-by: Yue Hu <[email protected]>
We should check both erofs_sb_has_fragments() && sbi.packed_nid > 0 here. Thanks, Gao Xiang
--- dump/main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dump/main.c b/dump/main.c index fd1923f..b9aa0f5 100644 --- a/dump/main.c +++ b/dump/main.c @@ -99,6 +99,7 @@ static struct erofsdump_feature feature_lists[] = { { false, EROFS_FEATURE_INCOMPAT_DEVICE_TABLE, "device_table" }, { false, EROFS_FEATURE_INCOMPAT_ZTAILPACKING, "ztailpacking" }, { false, EROFS_FEATURE_INCOMPAT_FRAGMENTS, "fragments" }, + { false, EROFS_FEATURE_INCOMPAT_DEDUPE, "dedupe" }, };static int erofsdump_readdir(struct erofs_dir_context *ctx);@@ -273,7 +274,7 @@ static int erofsdump_read_packed_inode(void) erofs_off_t occupied_size = 0; struct erofs_inode vi = { .nid = sbi.packed_nid };- if (!erofs_sb_has_fragments())+ if (!sbi.packed_nid) return 0;err = erofs_read_inode_from_disk(&vi);@@ -605,7 +606,7 @@ static void erofsdump_show_superblock(void) sbi.xattr_blkaddr); fprintf(stdout, "Filesystem root nid: %llu\n", sbi.root_nid | 0ULL); - if (erofs_sb_has_fragments()) + if (sbi.packed_nid > 0) fprintf(stdout, "Filesystem packed nid: %llu\n", sbi.packed_nid | 0ULL); fprintf(stdout, "Filesystem inode count: %llu\n",
