Codex noticed that rtgroup metadata repairs can be difficult (e.g.
rtrmap) but we don't ever warn the user about that. Scrub does that for
per-AG and fs metadata, so do that here too.
Cc: linux-xfs@vger.kernel.org # v6.13.0
Fixes: 241d915d69d4ae ("xfs_scrub: scrub realtime allocation group metadata")
Signed-off-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
struct scrub_ctx *ctx = (struct scrub_ctx *)wq->wq_ctx;
struct scan_ctl *sctl = arg;
char descr[DESCR_BUFSZ];
+ unsigned int difficulty;
bool defer_repairs;
int ret;
sctl->aborted = true;
return;
}
+ if (defer_repairs)
+ goto defer;
+
+ /* Complain about metadata corruptions that might not be fixable. */
+ difficulty = repair_item_difficulty(&sri);
+ warn_repair_difficulties(ctx, difficulty, descr);
+defer:
/* Everything else gets fixed during phase 4. */
ret = defer_fs_repair(ctx, &sri);
if (ret) {