All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <darrick.wong@oracle.com>
To: darrick.wong@oracle.com
Cc: linux-xfs@vger.kernel.org
Subject: [PATCH v9 00/16] xfs: online scrub xref support
Date: Fri, 11 Aug 2017 00:10:12 -0700	[thread overview]
Message-ID: <150243541274.29473.1227559008347544526.stgit@magnolia> (raw)

Hi all,

This is the ninth revision of a patchset that adds to XFS kernel
support for online metadata scrubbing and repair.  There aren't any
on-disk format changes.  The overview of the online scrub functionality
isn't any different than it was with the first kernel series, so I'll
dive into what's in this set.

Today's submission is the third of four parts; it adds to the various
metadata scrubbers the ability to cross-reference other metadata.  If
a given record has a corresponding record somewhere else (e.g. each
inobt record has a corresponding rmapbt record for inodes) or lacks a
corresponding record elsewhere (e.g. each bmbt record does /not/ match
to any bnobt records) then we can be far more certain of the
filesystem's correctness.  We try to augment each scrubber with as many
cross-reference checks as we possibly can, though we are careful to
avoid deadlocks when taking locks in reverse order (rmapbt).

If you're going to start using this mess, you probably ought to just
pull from my git trees.  The kernel patches[1] should apply against
4.13-rc4.  xfsprogs[2] and xfstests[3] can be found in their usual
places.  The git trees contain all four series' worth of changes.

This is an extraordinary way to eat your data.  Enjoy! 
Comments and questions are, as always, welcome.

--D

[1] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=djwong-devel
[2] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=djwong-devel
[3] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfstests-dev.git/log/?h=djwong-devel

             reply	other threads:[~2017-08-11  7:10 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-11  7:10 Darrick J. Wong [this message]
2017-08-11  7:10 ` [PATCH 01/16] xfs: add scrub cross-referencing helpers for the free space btrees Darrick J. Wong
2017-08-11  7:10 ` [PATCH 02/16] xfs: add scrub cross-referencing helpers for the inode btrees Darrick J. Wong
2017-08-11  7:10 ` [PATCH 03/16] xfs: add scrub cross-referencing helpers for the rmap btrees Darrick J. Wong
2017-08-11  7:10 ` [PATCH 04/16] xfs: add scrub cross-referencing helpers for the refcount btrees Darrick J. Wong
2017-08-11  7:10 ` [PATCH 05/16] xfs: set up scrub cross-referencing helpers Darrick J. Wong
2017-08-11  7:10 ` [PATCH 06/16] xfs: check btree block ownership with bnobt/rmapbt when scrubbing btree Darrick J. Wong
2017-08-11  7:10 ` [PATCH 07/16] xfs: scrub should cross-reference with the bnobt Darrick J. Wong
2017-08-11  7:11 ` [PATCH 08/16] xfs: cross-reference bnobt records with cntbt Darrick J. Wong
2017-08-11  7:11 ` [PATCH 09/16] xfs: cross-reference extents with AG header Darrick J. Wong
2017-08-11  7:11 ` [PATCH 10/16] xfs: cross-reference inode btrees during scrub Darrick J. Wong
2017-08-11  7:11 ` [PATCH 11/16] xfs: cross-reference reverse-mapping btree Darrick J. Wong
2017-08-11  7:11 ` [PATCH 12/16] xfs: cross-reference the rmapbt data with the refcountbt Darrick J. Wong
2017-08-11  7:11 ` [PATCH 13/16] xfs: cross-reference refcount btree during scrub Darrick J. Wong
2017-08-11  7:11 ` [PATCH 14/16] xfs: scrub should cross-reference the realtime bitmap Darrick J. Wong
2017-08-11  7:11 ` [PATCH 15/16] xfs: cross-reference the block mappings when possible Darrick J. Wong
2017-08-11  7:11 ` [PATCH 16/16] xfs: shut off scrub-related error and corruption messages Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=150243541274.29473.1227559008347544526.stgit@magnolia \
    --to=darrick.wong@oracle.com \
    --cc=linux-xfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.