diff options
author | Darrick J. Wong <djwong@kernel.org> | 2021-09-01 10:59:04 -0700 |
---|---|---|
committer | Darrick J. Wong <djwong@kernel.org> | 2021-10-22 16:40:45 -0700 |
commit | bd1001e99e6dca1a12809431d1cd6eb4896d82d2 (patch) | |
tree | 006f07f4461166bbd41643c14e0094ff264345f7 /fs/xfs/scrub/repair.h | |
parent | 9fc504f372b56a2d5c64ecfaa95c4ce086342113 (diff) |
xfs: online repair of realtime summariesrepair-rtsummary_2021-10-22
Repair the realtime summary data by constructing a new rtsummary file in
the scrub temporary file, then atomically swapping the contents.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs/xfs/scrub/repair.h')
-rw-r--r-- | fs/xfs/scrub/repair.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/fs/xfs/scrub/repair.h b/fs/xfs/scrub/repair.h index 6a8b85dd71be..e72a97f50ab2 100644 --- a/fs/xfs/scrub/repair.h +++ b/fs/xfs/scrub/repair.h @@ -72,6 +72,7 @@ int xrep_reset_perag_resv(struct xfs_scrub *sc); int xrep_bmap(struct xfs_scrub *sc, int whichfork, bool allow_unwritten); int xrep_metadata_inode_forks(struct xfs_scrub *sc); int xrep_setup_ag_rmapbt(struct xfs_scrub *sc); +int xrep_setup_rtsummary(struct xfs_scrub *sc, unsigned int *resblks); void xrep_ag_btcur_init(struct xfs_scrub *sc, struct xchk_ag *sa); int xrep_ag_init(struct xfs_scrub *sc, struct xfs_perag *pag, @@ -107,6 +108,12 @@ int xrep_quotacheck(struct xfs_scrub *sc); # define xrep_quotacheck xrep_notsupported #endif /* CONFIG_XFS_QUOTA */ +#ifdef CONFIG_XFS_RT +int xrep_rtsummary(struct xfs_scrub *sc); +#else +# define xrep_rtsummary xrep_notsupported +#endif /* CONFIG_XFS_RT */ + struct xrep_newbt_resv { /* Link to list of extents that we've reserved. */ struct list_head list; @@ -209,6 +216,13 @@ xrep_setup_ag_rmapbt( return xchk_setup_ag_btree(sc, false); } +static inline int +xrep_setup_rtsummary(struct xfs_scrub *sc, unsigned int *resblks) +{ + *resblks = 0; + return 0; +} + #define xrep_revalidate_allocbt (NULL) #define xrep_revalidate_iallocbt (NULL) @@ -228,6 +242,7 @@ xrep_setup_ag_rmapbt( #define xrep_quota xrep_notsupported #define xrep_quotacheck xrep_notsupported #define xrep_fscounters xrep_notsupported +#define xrep_rtsummary xrep_notsupported #endif /* CONFIG_XFS_ONLINE_REPAIR */ |