diff options
Diffstat (limited to 'fs/xfs/scrub/repair.h')
-rw-r--r-- | fs/xfs/scrub/repair.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/fs/xfs/scrub/repair.h b/fs/xfs/scrub/repair.h index 58caaa07843b..207b337d6c29 100644 --- a/fs/xfs/scrub/repair.h +++ b/fs/xfs/scrub/repair.h @@ -20,6 +20,9 @@ static inline int xrep_notsupported(struct xfs_scrub *sc) /* Repair helpers */ +enum xfs_blft; +struct xbitmap; + int xrep_attempt(struct xfs_inode *ip, struct xfs_scrub *sc); void xrep_failure(struct xfs_mount *mp); int xrep_roll_ag_trans(struct xfs_scrub *sc); @@ -33,8 +36,13 @@ int xrep_alloc_ag_block(struct xfs_scrub *sc, int xrep_init_btblock(struct xfs_scrub *sc, xfs_fsblock_t fsb, struct xfs_buf **bpp, xfs_btnum_t btnum, const struct xfs_buf_ops *ops); +int xrep_fallocate(struct xfs_scrub *sc, xfs_fileoff_t off, xfs_filblks_t len); -struct xbitmap; +typedef int (*xrep_setfile_getbuf_fn)(struct xfs_scrub *sc, + xfs_fileoff_t off, struct xfs_buf **bpp); +int xrep_set_file_contents(struct xfs_scrub *sc, + const struct xfs_buf_ops *ops, enum xfs_blft type, + xfs_fileoff_t isize); int xrep_fix_freelist(struct xfs_scrub *sc, bool can_shrink); int xrep_reap_extents(struct xfs_scrub *sc, struct xbitmap *exlist, @@ -57,6 +65,8 @@ int xrep_find_ag_btree_roots(struct xfs_scrub *sc, struct xfs_buf *agf_bp, void xrep_force_quotacheck(struct xfs_scrub *sc, uint dqtype); int xrep_ino_dqattach(struct xfs_scrub *sc); int xrep_reset_perag_resv(struct xfs_scrub *sc); +int xrep_xattr_reset_fork(struct xfs_scrub *sc); +int xrep_metadata_inode_forks(struct xfs_scrub *sc); /* Metadata revalidators */ @@ -80,6 +90,12 @@ int xrep_symlink(struct xfs_scrub *sc); int xrep_dir(struct xfs_scrub *sc); int xrep_xattr(struct xfs_scrub *sc); +#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; @@ -185,6 +201,7 @@ xrep_reset_perag_resv( #define xrep_symlink xrep_notsupported #define xrep_dir xrep_notsupported #define xrep_xattr xrep_notsupported +#define xrep_rtsummary xrep_notsupported #endif /* CONFIG_XFS_ONLINE_REPAIR */ |