=========================================================================== Index: cmd/xfsprogs/repair/incore.c =========================================================================== --- /usr/tmp/TmpDir.8404-0/cmd/xfsprogs/repair/incore.c_1.4 Fri Oct 4 10:51:31 2002 +++ cmd/xfsprogs/repair/incore.c Fri Oct 4 10:47:33 2002 @@ -72,7 +72,7 @@ setup_bmap(xfs_agnumber_t agno, xfs_agblock_t numblocks, xfs_drtbno_t rtblocks) { int i; - xfs_drfsbno_t size; + size_t size = 0; ba_bmap = (__uint64_t**)malloc(agno*sizeof(__uint64_t *)); if (!ba_bmap) { @@ -80,9 +80,7 @@ return; } for (i = 0; i < agno; i++) { - int size; - - size = roundup(numblocks * (NBBY/XR_BB),sizeof(__uint64_t)); + size = roundup(numblocks / (NBBY/XR_BB),sizeof(__uint64_t)); ba_bmap[i] = (__uint64_t*)memalign(sizeof(__uint64_t), size); if (!ba_bmap[i]) { @@ -98,7 +96,7 @@ return; } - size = roundup(rtblocks * (NBBY/XR_BB), sizeof(__uint64_t)); + size = roundup(rtblocks / (NBBY/XR_BB), sizeof(__uint64_t)); rt_ba_bmap=(__uint64_t*)memalign(sizeof(__uint64_t), size); if (!rt_ba_bmap) { @@ -178,7 +176,7 @@ * for now, initialize all realtime blocks to be free * (state == XR_E_FREE) */ - size = howmany(num * (NBBY/XR_BB), sizeof(__uint64_t)); + size = howmany(num / (NBBY/XR_BB), sizeof(__uint64_t)); for (j = 0; j < size; j++) rt_ba_bmap[j] = 0x2222222222222222LL; =========================================================================== Index: cmd/xfsprogs/repair/phase4.c =========================================================================== --- /usr/tmp/TmpDir.8404-0/cmd/xfsprogs/repair/phase4.c_1.8 Fri Oct 4 10:51:31 2002 +++ cmd/xfsprogs/repair/phase4.c Fri Oct 4 10:07:49 2002 @@ -1294,7 +1294,7 @@ /* * now reset the bitmap for all ags */ - bzero(ba_bmap[i], roundup(mp->m_sb.sb_agblocks*(NBBY/XR_BB), + bzero(ba_bmap[i], roundup(mp->m_sb.sb_agblocks/(NBBY/XR_BB), sizeof(__uint64_t))); for (j = 0; j < ag_hdr_block; j++) set_agbno_state(mp, i, j, XR_E_INUSE_FS);