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 <hongz...@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