Linux RAID subsystem development
 help / color / mirror / Atom feed
From: 002@tut.by
To: Phil Turmel <philip@turmel.org>
Cc: Jeremy Graham <jeremy@doghouse.agency>,
	linux-raid@vger.kernel.org,
	Andreas Klauer <andreas.klauer@metamorpher.de>
Subject: Re: mdadm stuck at 0% reshape after grow
Date: Wed, 06 Dec 2017 21:24:54 +0300	[thread overview]
Message-ID: <3235751512584694@web9j.yandex.ru> (raw)
In-Reply-To: <1b43be27-f21a-1fba-f983-01c5356a654d@turmel.org>

> 
> No, almost certainly not the correct data. The data that was attempted
> to be written at the time the BB was added didn't make it to disk, and
> any future updated data writes would be skipped since it's in the list.

According to Neil's design notes, this is expected to happen only on members that had introduced write errors after last raid assembly.
According to my experience, on kernels at least up to v4.3, rewriting of member's bad blocks, that had already replicated to parity blocks, just fails with write error on file system level. I believe, Jeremy would have noticed if that happened to him, so, most certainly, the bad blocks hasn't been rewritten since. And if these are induced by read errors and not write errors (which is far more probable with most recent drives), the correct data is still there.

> No, it doesn't. The read error is only passed to the filesystem if
> there's no redundancy left for the block address.
Which is the case for every block here. Look at his BBL's.

> There's no "up" to the existing BBL. It isn't doing what people think.
> It does NOT cause the upper layer to avoid the block address. It just
> kills redundancy at that address.
Well, in a scenario with a completely lost (broken/unrecoverable) drive and expected occasional read errors on remaining raid members, even current state of BBL does more good then evil. Neil's design goals for the BBL feature looked perfectly valid back in 2010, only today they need amendment. As for the implementation itself, it is stable, but unfinished, lacking rewrite support (or is it not?) and a working reshape (probably just big fat warning in mdadm, that reshaping with non-empty BBL's is forbidden, because of potential data loss risk).

> This is why I suggested using hdparm to pass the BBL data to the
> underlying drive. Then MD *will* actually fix each block.
I don't believe the soft bad generation is a stable feature that produces repeatable and equal results on every drive. Also, you can't undo soft bad without rewriting sector. Risky advice. For raid5 it is trivial to xor sectors with the same numbers (plus data offset) to produce the correct missing sector and thus regenerate parity without relying on md doing this.
> 
> The problem with the BBL right now is its existence.
The tested implementation itself has a value. Though, I agree, BBL's absolutely shouldn't be turned on by default.


  reply	other threads:[~2017-12-06 18:24 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-05  9:41 mdadm stuck at 0% reshape after grow Jeremy Graham
2017-12-05 10:56 ` Wols Lists
2017-12-05 15:49   ` Nix
2017-12-05 15:55 ` 002
2017-12-06  2:51   ` Phil Turmel
2017-12-06  4:33     ` Jeremy Graham
2017-12-06  7:36       ` Jeremy Graham
2017-12-06 13:34         ` Wols Lists
2017-12-06 14:02         ` 002
2017-12-06 10:49       ` Andreas Klauer
2017-12-06 14:15         ` Phil Turmel
2017-12-06 16:03           ` Andreas Klauer
2017-12-06 16:21             ` Phil Turmel
2017-12-06 18:24               ` 002 [this message]
2017-12-07  8:40                 ` Jeremy Graham
2017-12-06 20:19               ` Edward Kuns
2017-12-07 10:26                 ` Wols Lists
2017-12-07 13:58                 ` Andreas Klauer
2017-12-07 17:06                   ` Wols Lists
2017-12-07 17:40                   ` Andreas Klauer
2017-12-07 20:31                     ` Wols Lists
2017-12-07 23:40                     ` Wols Lists
2017-12-08  1:25                       ` 002
2017-12-09  0:20                       ` Edward Kuns
2017-12-14 12:43                         ` Brad Campbell
2017-12-14 17:32                           ` Edward Kuns

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=3235751512584694@web9j.yandex.ru \
    --to=002@tut.by \
    --cc=andreas.klauer@metamorpher.de \
    --cc=jeremy@doghouse.agency \
    --cc=linux-raid@vger.kernel.org \
    --cc=philip@turmel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox