Loading fs/xfs/scrub/repair.h +3 −0 Original line number Diff line number Diff line Loading @@ -146,9 +146,11 @@ int xrep_metapath(struct xfs_scrub *sc); #ifdef CONFIG_XFS_RT int xrep_rtbitmap(struct xfs_scrub *sc); int xrep_rtsummary(struct xfs_scrub *sc); int xrep_rgsuperblock(struct xfs_scrub *sc); #else # define xrep_rtbitmap xrep_notsupported # define xrep_rtsummary xrep_notsupported # define xrep_rgsuperblock xrep_notsupported #endif /* CONFIG_XFS_RT */ #ifdef CONFIG_XFS_QUOTA Loading Loading @@ -253,6 +255,7 @@ static inline int xrep_setup_symlink(struct xfs_scrub *sc, unsigned int *x) #define xrep_symlink xrep_notsupported #define xrep_dirtree xrep_notsupported #define xrep_metapath xrep_notsupported #define xrep_rgsuperblock xrep_notsupported #endif /* CONFIG_XFS_ONLINE_REPAIR */ Loading fs/xfs/scrub/rgsuper.c +16 −0 Original line number Diff line number Diff line Loading @@ -10,8 +10,12 @@ #include "xfs_trans_resv.h" #include "xfs_mount.h" #include "xfs_rtgroup.h" #include "xfs_log_format.h" #include "xfs_trans.h" #include "xfs_sb.h" #include "scrub/scrub.h" #include "scrub/common.h" #include "scrub/repair.h" /* Set us up with a transaction and an empty context. */ int Loading Loading @@ -66,3 +70,15 @@ xchk_rgsuperblock( xchk_rgsuperblock_xref(sc); return 0; } #ifdef CONFIG_XFS_ONLINE_REPAIR int xrep_rgsuperblock( struct xfs_scrub *sc) { ASSERT(rtg_rgno(sc->sr.rtg) == 0); xfs_log_sb(sc->tp); return 0; } #endif /* CONFIG_XFS_ONLINE_REPAIR */ fs/xfs/scrub/scrub.c +1 −1 Original line number Diff line number Diff line Loading @@ -456,7 +456,7 @@ static const struct xchk_meta_ops meta_scrub_ops[] = { .setup = xchk_setup_rgsuperblock, .scrub = xchk_rgsuperblock, .has = xfs_has_rtsb, .repair = xrep_notsupported, .repair = xrep_rgsuperblock, }, }; Loading Loading
fs/xfs/scrub/repair.h +3 −0 Original line number Diff line number Diff line Loading @@ -146,9 +146,11 @@ int xrep_metapath(struct xfs_scrub *sc); #ifdef CONFIG_XFS_RT int xrep_rtbitmap(struct xfs_scrub *sc); int xrep_rtsummary(struct xfs_scrub *sc); int xrep_rgsuperblock(struct xfs_scrub *sc); #else # define xrep_rtbitmap xrep_notsupported # define xrep_rtsummary xrep_notsupported # define xrep_rgsuperblock xrep_notsupported #endif /* CONFIG_XFS_RT */ #ifdef CONFIG_XFS_QUOTA Loading Loading @@ -253,6 +255,7 @@ static inline int xrep_setup_symlink(struct xfs_scrub *sc, unsigned int *x) #define xrep_symlink xrep_notsupported #define xrep_dirtree xrep_notsupported #define xrep_metapath xrep_notsupported #define xrep_rgsuperblock xrep_notsupported #endif /* CONFIG_XFS_ONLINE_REPAIR */ Loading
fs/xfs/scrub/rgsuper.c +16 −0 Original line number Diff line number Diff line Loading @@ -10,8 +10,12 @@ #include "xfs_trans_resv.h" #include "xfs_mount.h" #include "xfs_rtgroup.h" #include "xfs_log_format.h" #include "xfs_trans.h" #include "xfs_sb.h" #include "scrub/scrub.h" #include "scrub/common.h" #include "scrub/repair.h" /* Set us up with a transaction and an empty context. */ int Loading Loading @@ -66,3 +70,15 @@ xchk_rgsuperblock( xchk_rgsuperblock_xref(sc); return 0; } #ifdef CONFIG_XFS_ONLINE_REPAIR int xrep_rgsuperblock( struct xfs_scrub *sc) { ASSERT(rtg_rgno(sc->sr.rtg) == 0); xfs_log_sb(sc->tp); return 0; } #endif /* CONFIG_XFS_ONLINE_REPAIR */
fs/xfs/scrub/scrub.c +1 −1 Original line number Diff line number Diff line Loading @@ -456,7 +456,7 @@ static const struct xchk_meta_ops meta_scrub_ops[] = { .setup = xchk_setup_rgsuperblock, .scrub = xchk_rgsuperblock, .has = xfs_has_rtsb, .repair = xrep_notsupported, .repair = xrep_rgsuperblock, }, }; Loading