diff options
Diffstat (limited to 'fs/xfs/scrub/refcount.c')
| -rw-r--r-- | fs/xfs/scrub/refcount.c | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/fs/xfs/scrub/refcount.c b/fs/xfs/scrub/refcount.c index bf22f245bbfa..d0c7d4a29c0f 100644 --- a/fs/xfs/scrub/refcount.c +++ b/fs/xfs/scrub/refcount.c @@ -7,8 +7,10 @@  #include "xfs_fs.h"  #include "xfs_shared.h"  #include "xfs_format.h" +#include "xfs_log_format.h"  #include "xfs_trans_resv.h"  #include "xfs_mount.h" +#include "xfs_trans.h"  #include "xfs_ag.h"  #include "xfs_btree.h"  #include "xfs_rmap.h" @@ -17,6 +19,7 @@  #include "scrub/common.h"  #include "scrub/btree.h"  #include "scrub/trace.h" +#include "scrub/repair.h"  /*   * Set us up to scrub reference count btrees. @@ -27,6 +30,15 @@ xchk_setup_ag_refcountbt(  {  	if (xchk_need_intent_drain(sc))  		xchk_fsgates_enable(sc, XCHK_FSGATES_DRAIN); + +	if (xchk_could_repair(sc)) { +		int		error; + +		error = xrep_setup_ag_refcountbt(sc); +		if (error) +			return error; +	} +  	return xchk_setup_ag_btree(sc, false);  }  |