linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Molle Bestefich <molle.bestefich@gmail.com>
To: Guy <bugzilla@watkins-home.com>
Cc: linux-raid@vger.kernel.org
Subject: Re: Joys of spare disks!
Date: Thu, 3 Mar 2005 10:37:24 +0100	[thread overview]
Message-ID: <62b0912f050303013754af4415@mail.gmail.com> (raw)
In-Reply-To: <200503021617.j22GH0516373@www.watkins-home.com>

Guy <bugzilla@watkins-home.com> wrote:

I generally agree with you, so I'm just gonna cite / reply to the
points where we don't :-).

> This sounded like Neil's current plan.  But if I understand the plan, the
> drive would be kicked out of the array.

Yeah, sounds bad.
Although it should be marked as "degraded" in mdstat, since there's
basically no redundancy until the failed blocks have been reassigned
somehow.

> And 1000 bad blocks!  I have never had 2 on the same disk at the
> same time.  AFAIK.  I would agree that 1000 would put a strain on the
> system!

Well, it happened to me on a Windows system, so I don't think that
that is far-fetched.

This was a desktop system with the case open, so it was bounced about a lot.

Every time the disk reached one of the faulty areas, it recalibrated
the head and then moved it out to try and read again.  It retried the
operation 5 times before giving up.  While this was ongoing, Windows
was frozen.  It took at least 3 seconds each time I hit a bad area,
and I think even more.

If MD could read from a disk while a similar scenario occurred, and
just mark the bad blocks for "rewriting" in some "bad block rewrite
bitmap" or whatever, a system hang could be avoided.  Trying to
rewrite every failed sector sequentially in the code that also reads
the data would incur a system hang.  That's what I tried to say
originally, though I probably didn't do a good job (I know little of
linux md, guess it shows =)).

Of course, the disks would, in the case of IDE, probably have to _not_
be in master/slave configurations, since the disk with failing blocks
could perhaps hog the bus.  Of course I know as little of ATA/IDE as I
do of linux MD, so I'm basically just guessing here ;-).

> Sometime in the past I have said there should be a threshold on the number
> of bad blocks allowed.  Once the threshold is reached, the disk should be
> assumed bad, or at least failing, and should be replaced.

Hm.  Why?
If a re-write on the block succeeds and then a read on the block
returns the correct data, the block has been fixed.  I can see your
point on old disks where it might be a magnetic problem that was
causing the sector to fail, but on a modern disk, it has probably been
relocated to the spare area.  I think the disk should just be failed
when a rewrite-and-verify cycle still fails.  The threshold suggestion
adds complexity and user-configurability (error-prone) to an area
where it's not really needed, doesn't it?

Another note.  I'd like to see MD being able to have a
user-specifiable "bad block relocation area", just like modern disks
have.  It could use this when the disks spare area filled up.  I even
thought up a use case at one time that wasn't insane like, "my disks
is really beginning to show up a lot of failures now, but I think I'll
keep it running a bit more", but I can't quite reminisce what it was.

> Does anyone know how many spare blocks are on a disk?

It probably varies?
Ie. crappy disks probably have a much too small area ;-).
In this case it would be very cute if MD had an option to specify it's
own relocation area (and perhaps even a recommendation for the user on
how to set it wrt. specific harddisks).
But OTOH, it sucks to implement features in MD that would be much
easier to solve in the disks by just expanding the spare area (when
present).

> My worse disk has 28 relocated bad blocks.

Doesn't sound bad.
Isn't there a SMART value that will show you how big a percentage of
spare is used (0-255)?

  reply	other threads:[~2005-03-03  9:37 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-28 14:24 Joys of spare disks! Robin Bowes
2005-02-28 15:04 ` Jon Lewis
2005-02-28 15:23   ` Robin Bowes
2005-02-28 15:54     ` Nicola Fankhauser
2005-02-28 17:04       ` Robin Bowes
2005-02-28 18:58         ` Nicola Fankhauser
2005-02-28 19:25           ` Robin Bowes
2005-03-02  2:48 ` Robin Bowes
2005-03-02  2:59   ` Neil Brown
2005-03-02  3:50   ` Molle Bestefich
2005-03-02  3:52     ` Molle Bestefich
2005-03-02  5:52     ` Guy
2005-03-02 12:05       ` Molle Bestefich
2005-03-02 16:16         ` Guy
2005-03-03  9:37           ` Molle Bestefich [this message]
2005-03-02  4:57   ` Brad Campbell
2005-03-02  5:53     ` Guy
     [not found]       ` <eaa6dfe0503080915276466a1@mail.gmail.com>
2005-03-08 17:15         ` Derek Piper
     [not found]         ` <200503091704.j29H4l517152@www.watkins-home.com>
2005-03-10 19:24           ` Derek Piper
  -- strict thread matches above, loose matches on Subject: below --
2005-03-07 16:36 LinuxRaid
2005-03-07 17:09 ` Peter T. Breuer
2005-03-07 20:15 LinuxRaid

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=62b0912f050303013754af4415@mail.gmail.com \
    --to=molle.bestefich@gmail.com \
    --cc=bugzilla@watkins-home.com \
    --cc=linux-raid@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 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).