[PATCH 24/43] xfs_db: metadump metadir rt bitmap and summary files

Darrick J. Wong
2024-10-11T01:30:49Z

From: Christoph Hellwig <hch@lst.de>

Don't skip dumping the data fork for regular files that are marked as
metadata inodes. This catches rtbitmap and summary inodes on rtgroup
enabled file systems where their inode numbers aren't recorded in the
superblock.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
db/metadump.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/db/metadump.c b/db/metadump.c
index 144ebfbfe2a90e..8eb4b8eb69e45c 100644
--- a/db/metadump.c
+++ b/db/metadump.c
@@ -2072,7 +2072,11 @@ process_bmbt_reclist(
xfs_agblock_t agbno;
int rval = 1;

- if (btype == TYP_DATA)
+ /*
+ * Ignore regular file data except for metadata inodes, where it is by
+ * definition metadata.
+ */
+ if (btype == TYP_DATA && !is_metadata_ino(dip))
return 1;

convert_extent(&rp[numrecs - 1], &o, &s, &c, &f);