summaryrefslogtreecommitdiffstats
path: root/fs/xfs/scrub/trace.c
diff options
context:
space:
mode:
authorDarrick J. Wong <djwong@kernel.org>2024-04-22 09:48:20 -0700
committerDarrick J. Wong <djwong@kernel.org>2024-04-23 16:55:16 -0700
commit928b721a11789a9363d6d7c32a1f3166a79f3b5f (patch)
treeccf862c1145912410c841c740aa2e058574b5547 /fs/xfs/scrub/trace.c
parent327ed702d84034879572812f580cb769848af7ae (diff)
downloadlinux-928b721a11789a9363d6d7c32a1f3166a79f3b5f.tar.gz
linux-928b721a11789a9363d6d7c32a1f3166a79f3b5f.tar.bz2
linux-928b721a11789a9363d6d7c32a1f3166a79f3b5f.zip
xfs: teach online scrub to find directory tree structure problems
Create a new scrubber that detects corruptions within the directory tree structure itself. It can detect directories with multiple parents; loops within the directory tree; and directory loops not accessible from the root. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/scrub/trace.c')
-rw-r--r--fs/xfs/scrub/trace.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/xfs/scrub/trace.c b/fs/xfs/scrub/trace.c
index 4a8cc2c98d99..4470ad0533b8 100644
--- a/fs/xfs/scrub/trace.c
+++ b/fs/xfs/scrub/trace.c
@@ -28,6 +28,10 @@
#include "scrub/orphanage.h"
#include "scrub/nlinks.h"
#include "scrub/fscounters.h"
+#include "scrub/bitmap.h"
+#include "scrub/ino_bitmap.h"
+#include "scrub/xfblob.h"
+#include "scrub/dirtree.h"
/* Figure out which block the btree cursor was pointing to. */
static inline xfs_fsblock_t