From: Gao Xiang Date: Fri, 3 Jan 2025 09:03:34 +0000 (+0800) Subject: erofs-utils: lib: use round_up() to avoid division X-Git-Tag: accepted/tizen/unified/20250610.081809~13 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2d4bc7420a9ee6186cf28a9dee5fdc9c9f94f819;p=platform%2Fupstream%2Ferofs-utils.git erofs-utils: lib: use round_up() to avoid division A hotspot identified by profiling. Signed-off-by: Gao Xiang Link: https://lore.kernel.org/r/20250103090338.740593-1-hsiangkao@linux.alibaba.com --- diff --git a/lib/cache.c b/lib/cache.c index 5b2cc45..f9aa6eb 100644 --- a/lib/cache.c +++ b/lib/cache.c @@ -76,11 +76,12 @@ static int __erofs_battach(struct erofs_buffer_block *bb, struct erofs_sb_info *sbi = bmgr->sbi; const unsigned int blkmask = erofs_blksiz(sbi) - 1; erofs_off_t boff = bb->buffers.off; - const erofs_off_t alignedoffset = roundup(boff, alignsize); + const erofs_off_t alignedoffset = round_up(boff, alignsize); bool tailupdate = false; erofs_blk_t blkaddr; int oob; + DBG_BUGON(alignsize & (alignsize - 1)); /* inline data must never span block boundaries */ if (erofs_blkoff(sbi, alignedoffset + incr + blkmask) + inline_ext > blkmask)