From e01b4739ddd5b22a0cb00c5699c4dd10cac2366f Mon Sep 17 00:00:00 2001 From: Gao Xiang Date: Sun, 6 Apr 2025 02:57:07 +0800 Subject: [PATCH] erofs-utils: lib: fix two integer handling issues Coverity-id: 548918 Coverity-id: 548919 Signed-off-by: Gao Xiang Link: https://lore.kernel.org/r/20250405185707.3202298-4-hsiangkao@linux.alibaba.com --- lib/compress.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/compress.c b/lib/compress.c index a7d5e53..9f71022 100644 --- a/lib/compress.c +++ b/lib/compress.c @@ -1169,7 +1169,7 @@ int erofs_commit_compressed_file(struct z_erofs_compress_ictx *ictx, /* fall back to no compression mode */ DBG_BUGON(pstart < (!!inode->idata_size) << bbits); - ptotal -= (!!inode->idata_size) << bbits; + ptotal -= (u64)(!!inode->idata_size) << bbits; compressmeta = z_erofs_write_indexes(ictx); if (!compressmeta) { @@ -1687,7 +1687,7 @@ int erofs_write_compressed_file(struct z_erofs_compress_ictx *ictx) ret = PTR_ERR(bh); goto err_free_idata; } - pstart = erofs_mapbh(NULL, bh->block) << sbi->blkszbits; + pstart = erofs_pos(sbi, erofs_mapbh(NULL, bh->block)); ictx->seg_num = 1; sctx = (struct z_erofs_compress_sctx) { -- 2.34.1