summaryrefslogtreecommitdiffstats
path: root/fs/xfs/scrub/scrub.c
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2019-04-26 03:26:23 +0200
committerDarrick J. Wong <darrick.wong@oracle.com>2019-04-26 21:28:56 +0200
commit9a1f3049f47330b2467b9eecfc3a3298c46592d1 (patch)
tree17533b55913b335bc4fe50672f366937678c22da /fs/xfs/scrub/scrub.c
parentxfs: rename the speculative block allocation reclaim toggle functions (diff)
downloadlinux-9a1f3049f47330b2467b9eecfc3a3298c46592d1.tar.xz
linux-9a1f3049f47330b2467b9eecfc3a3298c46592d1.zip
xfs: allow scrubbers to pause background reclaim
The forthcoming summary counter patch races with regular filesystem activity to compute rough expected values for the counters. This design was chosen to avoid having to freeze the entire filesystem to check the counters, but while that's running we'd prefer to minimize background reclamation activity to reduce the perturbations to the incore free block count. Therefore, provide a way for scrubbers to disable background posteof and cowblock reclamation. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com>
Diffstat (limited to 'fs/xfs/scrub/scrub.c')
-rw-r--r--fs/xfs/scrub/scrub.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/xfs/scrub/scrub.c b/fs/xfs/scrub/scrub.c
index 93b0f075a4d3..ce13c1c366db 100644
--- a/fs/xfs/scrub/scrub.c
+++ b/fs/xfs/scrub/scrub.c
@@ -187,6 +187,8 @@ xchk_teardown(
xfs_irele(sc->ip);
sc->ip = NULL;
}
+ if (sc->flags & XCHK_REAPING_DISABLED)
+ xchk_start_reaping(sc);
if (sc->flags & XCHK_HAS_QUOTAOFFLOCK) {
mutex_unlock(&sc->mp->m_quotainfo->qi_quotaofflock);
sc->flags &= ~XCHK_HAS_QUOTAOFFLOCK;