summaryrefslogtreecommitdiff
path: root/fs/xfs/scrub/rtbitmap.h
diff options
context:
space:
mode:
authorDarrick J. Wong <djwong@kernel.org>2023-12-15 21:03:43 +0300
committerDarrick J. Wong <djwong@kernel.org>2023-12-15 21:03:43 +0300
commitffd37b22bd2b7cca7749c85a0a08268158903e55 (patch)
tree484c5b4ed5abceb8b5e78f7012250e7ad19113a9 /fs/xfs/scrub/rtbitmap.h
parenta59eb5fc21b2a6dc160ee6cdf77f20bc186a88fd (diff)
downloadlinux-ffd37b22bd2b7cca7749c85a0a08268158903e55.tar.xz
xfs: online repair of realtime bitmaps
Fix all the file metadata surrounding the realtime bitmap file, which includes the rt geometry, file size, forks, and space mappings. The bitmap contents themselves cannot be fixed without rt rmap, so that will come later. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/scrub/rtbitmap.h')
-rw-r--r--fs/xfs/scrub/rtbitmap.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/fs/xfs/scrub/rtbitmap.h b/fs/xfs/scrub/rtbitmap.h
new file mode 100644
index 000000000000..85304ff019e1
--- /dev/null
+++ b/fs/xfs/scrub/rtbitmap.h
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (C) 2023 Oracle. All Rights Reserved.
+ * Author: Darrick J. Wong <djwong@kernel.org>
+ */
+#ifndef __XFS_SCRUB_RTBITMAP_H__
+#define __XFS_SCRUB_RTBITMAP_H__
+
+struct xchk_rtbitmap {
+ uint64_t rextents;
+ uint64_t rbmblocks;
+ unsigned int rextslog;
+ unsigned int resblks;
+};
+
+#ifdef CONFIG_XFS_ONLINE_REPAIR
+int xrep_setup_rtbitmap(struct xfs_scrub *sc, struct xchk_rtbitmap *rtb);
+#else
+# define xrep_setup_rtbitmap(sc, rtb) (0)
+#endif /* CONFIG_XFS_ONLINE_REPAIR */
+
+#endif /* __XFS_SCRUB_RTBITMAP_H__ */