Improve the efficiency of the phase 7 inode counts by batching requests,
now that we have per-AG inumbers wrappers.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
{
struct xfs_inumbers_req *ireq;
uint64_t nr = 0;
+ unsigned int i;
int error;
- ireq = xfrog_inumbers_alloc_req(1, 0);
+ ireq = xfrog_inumbers_alloc_req(64, 0);
if (!ireq) {
str_info(ctx, descr, _("Insufficient memory; giving up."));
return false;
while (!(error = xfrog_inumbers(&ctx->mnt, ireq))) {
if (ireq->hdr.ocount == 0)
break;
- nr += ireq->inumbers[0].xi_alloccount;
+ for (i = 0; i < ireq->hdr.ocount; i++)
+ nr += ireq->inumbers[i].xi_alloccount;
}
free(ireq);