From: Chandan Babu R Date: Wed, 22 Jun 2022 19:28:52 +0000 (-0500) Subject: xfs: Use uint64_t to count maximum blocks that can be used by BMBT X-Git-Tag: v5.19.0-rc0~95 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=32b5fe856eccfad8ab2b1845776d5590b30e4d1d;p=thirdparty%2Fxfsprogs-dev.git xfs: Use uint64_t to count maximum blocks that can be used by BMBT Source kernel commit: 0c35e7ba18508e9344a1f27b412924bc8b34eba8 Reviewed-by: Darrick J. Wong Reviewed-by: Dave Chinner Signed-off-by: Chandan Babu R Signed-off-by: Eric Sandeen --- diff --git a/libxfs/xfs_bmap.c b/libxfs/xfs_bmap.c index 145983467..40764571b 100644 --- a/libxfs/xfs_bmap.c +++ b/libxfs/xfs_bmap.c @@ -45,9 +45,9 @@ xfs_bmap_compute_maxlevels( xfs_mount_t *mp, /* file system mount structure */ int whichfork) /* data or attr fork */ { - int level; /* btree level */ - uint maxblocks; /* max blocks at this level */ + uint64_t maxblocks; /* max blocks at this level */ xfs_extnum_t maxleafents; /* max leaf entries possible */ + int level; /* btree level */ int maxrootrecs; /* max records in root block */ int minleafrecs; /* min records in leaf block */ int minnoderecs; /* min records in node block */ @@ -81,7 +81,7 @@ xfs_bmap_compute_maxlevels( if (maxblocks <= maxrootrecs) maxblocks = 1; else - maxblocks = (maxblocks + minnoderecs - 1) / minnoderecs; + maxblocks = howmany_64(maxblocks, minnoderecs); } mp->m_bm_maxlevels[whichfork] = level; ASSERT(mp->m_bm_maxlevels[whichfork] <= xfs_bmbt_maxlevels_ondisk());