From 8e6138c853f7de6724f48ce6ecc20cbce541d962 Mon Sep 17 00:00:00 2001 From: Gao Xiang Date: Thu, 19 Sep 2024 10:16:35 +0800 Subject: [PATCH] erofs-utils: mkfs: fix a regression where rebuild mode does not work It will fail unexpectedly if any sub-image lacks an extra device (blob). Fixes: 7550a30c332c ("erofs-utils: enable incremental builds") Signed-off-by: Gao Xiang Link: https://lore.kernel.org/r/20240919021635.2922387-1-hsiangkao@linux.alibaba.com --- mkfs/main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mkfs/main.c b/mkfs/main.c index 5c8b5e4..7e2e184 100644 --- a/mkfs/main.c +++ b/mkfs/main.c @@ -1091,7 +1091,8 @@ static int erofs_mkfs_rebuild_load_trees(struct erofs_inode *root) if (datamode != EROFS_REBUILD_DATA_BLOB_INDEX) return 0; - if (extra_devices != rebuild_src_count) { + /* Each blob has either no extra device or only one device for TarFS */ + if (extra_devices && extra_devices != rebuild_src_count) { erofs_err("extra_devices(%u) is mismatched with source images(%u)", extra_devices, rebuild_src_count); return -EOPNOTSUPP; -- 2.34.1