linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: Marc MERLIN <marc@merlins.org>
Cc: Richard Scobie <r.scobie@clear.net.nz>,
	Linux RAID Mailing List <linux-raid@vger.kernel.org>
Subject: Re: How to force rewrite of a smart detected bad block with raid5: checkarray?
Date: Thu, 20 Jan 2011 07:01:33 +1100	[thread overview]
Message-ID: <20110120070133.47eccd10@notabene.brown> (raw)
In-Reply-To: <20110119184914.GA27358@merlins.org>

On Wed, 19 Jan 2011 10:49:14 -0800 Marc MERLIN <marc@merlins.org> wrote:

> On Thu, Jan 20, 2011 at 07:36:12AM +1300, Richard Scobie wrote:
> > Marc Merlin wrote:
> > 
> > > Also, I didn't find anything about sync_action, check, and repair in
> > > the mdadm man page (a pointer to
> > > https://raid.wiki.kernel.org/index.php/RAID_Administration
> > > would me useful).
> > > Actually the above page still says that you can't check just a range
> > > of blocks.
> > 
> > > Is there more up to date documentation that I should be reading
> > > somewhere?
> > 
> > The kernel source, Documentation/md.txt.
> 
> Ah, yes of course. Didn't think about looking there, thanks.

"man md" is also an appropriate place to look.

> 
> Mmmh, so I was curious as to how repair, when reading all the blocks of a
> stripe with no read errors, and finding a parity mismatch, would know which
> block was corrupted and needs to be rewritten.

It doesn't repair the data - that would be impossible.  It repairs the
redundancy information which is all that raid really knows about.
i.e. if it finds an inconsistency it re-writes the parity block.

> Given that I don't see how it can figure that out, I'm not even sure when
> repair would be useful for raid5 when there are no underlying media errors
> returned (raid6 obviously has redundant info and it's possible there).

It isn't often useful.  But if you parity blocks are wrong somehow, then it
can be useful.  It will not recover data that you have already lost, but it
could make it less likely to lose more data.

md currently treats RAID6 just the same way as RAID5 - parity is re-written.
It is possible that more could be done, but it isn't completely clear that it
should - and it certainly isn't high on my priority list.

NeilBrown


> 
> Not that I need repair in my case (check indeed does the right thing), I'm
> just not sure when repair would be useful.
> 
> Anyway, thanks again for the pointer.
> 
> Cheers,
> Marc


  reply	other threads:[~2011-01-19 20:01 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-19 18:36 How to force rewrite of a smart detected bad block with raid5: checkarray? Richard Scobie
2011-01-19 18:49 ` Marc MERLIN
2011-01-19 20:01   ` NeilBrown [this message]
2011-01-19 20:57     ` Marc MERLIN
2011-01-20  0:30       ` Richard Scobie
  -- strict thread matches above, loose matches on Subject: below --
2011-01-19  7:04 Marc MERLIN
2011-01-19  7:42 ` Mikael Abrahamsson
2011-01-19  9:41   ` NeilBrown
2011-01-19 17:31     ` Marc MERLIN
2011-01-19 20:58       ` NeilBrown
2011-01-19 21:03         ` Marc MERLIN

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=20110120070133.47eccd10@notabene.brown \
    --to=neilb@suse.de \
    --cc=linux-raid@vger.kernel.org \
    --cc=marc@merlins.org \
    --cc=r.scobie@clear.net.nz \
    /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 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).