From f6dd5b0db72f75161502959b25d00c80734cc98c Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Tue, 28 May 2024 21:12:54 -0700 Subject: [PATCH] xfs: scrub the metadir path of rt rmap btree files Add a new XFS_SCRUB_METAPATH subtype so that we can scrub the metadata directory tree path to the rmap btree file for each rt group. Signed-off-by: Darrick J. Wong --- libfrog/scrub.c | 10 ++++++++++ libxfs/xfs_fs.h | 4 +++- scrub/scrub.c | 3 +++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/libfrog/scrub.c b/libfrog/scrub.c index e7fb8b890..f4c6d7c38 100644 --- a/libfrog/scrub.c +++ b/libfrog/scrub.c @@ -172,6 +172,16 @@ const struct xfrog_scrub_descr xfrog_metapaths[XFS_SCRUB_METAPATH_NR] = { .descr = "metapath", .group = XFROG_SCRUB_GROUP_NONE, }, + [XFS_SCRUB_METAPATH_RTDIR] = { + .name = "rtdir", + .descr = "realtime group metadir", + .group = XFROG_SCRUB_GROUP_FS, + }, + [XFS_SCRUB_METAPATH_RTRMAPBT] = { + .name = "rtrmapbt", + .descr = "rmap btree file metadir path", + .group = XFROG_SCRUB_GROUP_RTGROUP, + }, }; /* Invoke the scrub ioctl. Returns zero or negative error code. */ diff --git a/libxfs/xfs_fs.h b/libxfs/xfs_fs.h index e6ec09fe3..09f350b35 100644 --- a/libxfs/xfs_fs.h +++ b/libxfs/xfs_fs.h @@ -823,9 +823,11 @@ struct xfs_scrub_vec_head { * path checking. */ #define XFS_SCRUB_METAPATH_PROBE (0) /* do we have a metapath scrubber? */ +#define XFS_SCRUB_METAPATH_RTDIR (1) /* realtime metadir */ +#define XFS_SCRUB_METAPATH_RTRMAPBT (2) /* realtime reverse mapping */ /* Number of metapath sm_ino values */ -#define XFS_SCRUB_METAPATH_NR 1 +#define XFS_SCRUB_METAPATH_NR (3) /* * ioctl limits diff --git a/scrub/scrub.c b/scrub/scrub.c index 855f4f833..a2fd8d77d 100644 --- a/scrub/scrub.c +++ b/scrub/scrub.c @@ -66,6 +66,9 @@ format_metapath_descr( (unsigned long long)vhead->svh_ino); sc = &xfrog_metapaths[vhead->svh_ino]; + if (sc->group == XFROG_SCRUB_GROUP_RTGROUP) + return snprintf(buf, buflen, _("rtgroup %u %s"), + vhead->svh_agno, _(sc->descr)); return snprintf(buf, buflen, "%s", _(sc->descr)); } -- 2.50.1