On Mon, Jun 05, 2023 at 08:37:39AM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@xxxxxxxxxx> > > In xfs/155, I occasionally see this in the xfs_repair output: > > correcting imap > correcting imap > correcting imap > ... > > This is completely useless, since we don't actually log which inode > prompted this message. This logic has been here for a really long time, > but ... I can't make heads nor tails of it. If we're running in verbose > or dry-run mode, then print the inode number, but not if we're running > in fixit mode? > > A few lines later, if we're running in verbose dry-run mode, we print > "correcting imap" even though we're not going to write anything. > > If we get here, the inode looks like it's in use, but the inode index > says it isn't. This is a corruption, so either we fix it or we say that > we would fix it. Reviewed-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> > > Fixes: 6c39a3cbda3 ("Don't trash lost+found in phase 4 Merge of master-melb:xfs-cmds:29144a by kenmcd.") > Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> > --- > repair/dino_chunks.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > > diff --git a/repair/dino_chunks.c b/repair/dino_chunks.c > index cf6a5e399d4..33008853789 100644 > --- a/repair/dino_chunks.c > +++ b/repair/dino_chunks.c > @@ -871,13 +871,11 @@ process_inode_chunk( > */ > if (is_used) { > if (is_inode_free(ino_rec, irec_offset)) { > - if (verbose || no_modify) { > - do_warn( > + do_warn( > _("imap claims in-use inode %" PRIu64 " is free, "), > ino); > - } > > - if (verbose || !no_modify) > + if (!no_modify) > do_warn(_("correcting imap\n")); > else > do_warn(_("would correct imap\n")); >