From 1ff6be863f64bd81d48f143895980cc28bb4292d Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Mon, 30 Sep 2019 16:17:04 -0400 Subject: [PATCH] xfs_spaceman: remove open-coded per-ag bulkstat Now that xfrog_bulkstat supports per-AG bulkstat, we can get rid of the open coded one in spaceman. Signed-off-by: Darrick J. Wong Reviewed-by: Dave Chinner Signed-off-by: Eric Sandeen --- spaceman/health.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/spaceman/health.c b/spaceman/health.c index b195a229f..8fd985a29 100644 --- a/spaceman/health.c +++ b/spaceman/health.c @@ -268,30 +268,24 @@ report_bulkstat_health( { struct xfs_bulkstat_req *breq; char descr[256]; - uint64_t startino = 0; - uint64_t lastino = -1ULL; uint32_t i; int error; - if (agno != NULLAGNUMBER) { - startino = cvt_agino_to_ino(&file->xfd, agno, 0); - lastino = cvt_agino_to_ino(&file->xfd, agno + 1, 0) - 1; - } - - breq = xfrog_bulkstat_alloc_req(BULKSTAT_NR, startino); + breq = xfrog_bulkstat_alloc_req(BULKSTAT_NR, 0); if (!breq) { perror("bulk alloc req"); exitcode = 1; return 1; } + if (agno != NULLAGNUMBER) + xfrog_bulkstat_set_ag(breq, agno); + do { error = xfrog_bulkstat(&file->xfd, breq); if (error) break; for (i = 0; i < breq->hdr.ocount; i++) { - if (breq->bulkstat[i].bs_ino > lastino) - goto out; snprintf(descr, sizeof(descr) - 1, _("inode %"PRIu64), breq->bulkstat[i].bs_ino); report_sick(descr, inode_flags, @@ -304,7 +298,7 @@ report_bulkstat_health( errno = error; perror("bulkstat"); } -out: + free(breq); return error; } -- 2.47.2