[PATCH] erofs-utils: lib: fix inappropriate initialization in cache.c

Hongzhen Luo hongzhen at linux.alibaba.com
Mon Mar 3 16:42:53 AEDT 2025


This patch fixes the inappropriate initialization of `dsunit` and
`bktmap` in cache.c.

Fixes: 8bb6de4e7c41 ("erofs-utils: mkfs: support data alignment")
Fixes: ca0f040f98b6 ("erofs-utils: lib: use bitmaps to accelerate bucket selection")
Signed-off-by: Hongzhen Luo <hongzhen at linux.alibaba.com>
---
 lib/cache.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/cache.c b/lib/cache.c
index ca1061bc7f29..eddf21f49893 100644
--- a/lib/cache.c
+++ b/lib/cache.c
@@ -44,13 +44,15 @@ struct erofs_bufmgr *erofs_buffer_init(struct erofs_sb_info *sbi,
 		for (j = 0; j < ARRAY_SIZE(bmgr->watermeter[0]); j++) {
 			for (k = 0; k < blksiz; k++)
 				init_list_head(&bmgr->watermeter[i][j][k]);
-			memset(bmgr->bktmap[i][j], 0, blksiz / BITS_PER_LONG);
+			memset(bmgr->bktmap[i][j], 0,
+			       (blksiz / BITS_PER_LONG) * sizeof(unsigned long));
 		}
 	}
 	init_list_head(&bmgr->blkh.list);
 	bmgr->blkh.blkaddr = NULL_ADDR;
 	bmgr->tail_blkaddr = startblk;
 	bmgr->last_mapped_block = &bmgr->blkh;
+	bmgr->dsunit = 0;
 	return bmgr;
 }
 
-- 
2.43.5



More information about the Linux-erofs mailing list