linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/6] Btrfs: scrub: print path to corrupted files and trigger nodatasum fixup
@ 2011-06-13 19:10 Jan Schmidt
  2011-06-13 19:10 ` [PATCH v1 1/6] added helper functions to iterate backrefs Jan Schmidt
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Jan Schmidt @ 2011-06-13 19:10 UTC (permalink / raw)
  To: chris.mason, linux-btrfs

This patch set introduces two new features for scrub. They share the backref
iteration code which is the reason they made it into the same patch set.

The first feature adds printk statements in case scrub finds an error which list
all affected files. You will need patch 1, 2 and 3 for that.

The second feature adds the trigger which enables us to correct i/o errors in
case the affected extent does not have a checksum (nodatasum), eventually. You
will need patch 1, 4, 5 and 6 for that.

I tried to apply all patches to the current cmason/for-linus branch and to
Arne's current for-chris branch. They do apply with no errors (some offsets
possible).

Please review.

Next I'm starting to make up my mind how to implement on-the-fly error
correction correctly. This will enable us to rewrite good data whenever we
encounter a bad copy. I have some preliminary patches already, the stress in the
first sentence is on "correctly". The second feature mentioned in this patch
series will then automatically use that code, too.

-Jan

Jan Schmidt (6):
  added helper functions to iterate backrefs
  scrub: added unverified_errors
  scrub: print paths of corrupted files
  scrub: bugfix: mirror_num off by one
  add mirror_num to extent_read_full_page
  scrub: add fixup code for errors on nodatasum files

 fs/btrfs/Makefile    |    3 +-
 fs/btrfs/backref.c   |  461 ++++++++++++++++++++++++++++++++++++++++++++++++++
 fs/btrfs/backref.h   |   59 +++++++
 fs/btrfs/disk-io.c   |    2 +-
 fs/btrfs/extent_io.c |    6 +-
 fs/btrfs/extent_io.h |    3 +-
 fs/btrfs/inode.c     |    2 +-
 fs/btrfs/scrub.c     |  361 ++++++++++++++++++++++++++++++++++++---
 8 files changed, 866 insertions(+), 31 deletions(-)
 create mode 100644 fs/btrfs/backref.c
 create mode 100644 fs/btrfs/backref.h

-- 
1.7.3.4


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2011-06-18 11:26 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-13 19:10 [PATCH v1 0/6] Btrfs: scrub: print path to corrupted files and trigger nodatasum fixup Jan Schmidt
2011-06-13 19:10 ` [PATCH v1 1/6] added helper functions to iterate backrefs Jan Schmidt
2011-06-16 21:24   ` David Sterba
2011-06-18 11:25     ` Jan Schmidt
2011-06-13 19:10 ` [PATCH v1 2/6] scrub: added unverified_errors Jan Schmidt
2011-06-16 21:25   ` David Sterba
2011-06-17  8:16     ` David Sterba
2011-06-13 19:10 ` [PATCH v1 3/6] scrub: print paths of corrupted files Jan Schmidt
2011-06-16 21:26   ` David Sterba
2011-06-18 11:26     ` Jan Schmidt
2011-06-13 19:10 ` [PATCH v1 4/6] scrub: bugfix: mirror_num off by one Jan Schmidt
2011-06-13 19:10 ` [PATCH v1 5/6] add mirror_num to extent_read_full_page Jan Schmidt
2011-06-13 19:10 ` [PATCH v1 6/6] scrub: add fixup code for errors on nodatasum files Jan Schmidt
2011-06-16 21:27   ` David Sterba
2011-06-18 11:26     ` Jan Schmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).