From: Allan Sandfeld <linux@sneulv.dk>
To: Kasper Dupont <kasperd@daimi.au.dk>
Cc: Linux-Kernel <linux-kernel@vger.kernel.org>
Subject: Re: RAID-6 support in kernel?
Date: Tue, 4 Jun 2002 15:58:12 +0200 [thread overview]
Message-ID: <200206041558.12209.linux@sneulv.dk> (raw)
In-Reply-To: <Pine.LNX.4.33.0206031025400.30424-100000@mail.pronto.tv> <200206041311.03631.linux@sneulv.dk> <3CFCB7D1.5A09615E@daimi.au.dk>
On Tuesday 04 June 2002 14:51, Kasper Dupont wrote:
> Allan Sandfeld wrote:
> > On Monday 03 June 2002 10:57, Kasper Dupont wrote:
> > > Roy Sigurd Karlsbakk wrote:
> > > > > > RAID-6 layout: http://www.acnc.com/04_01_06.html
> > > > >
> > > > > If it is supposed to survive two arbitrary disk failures something
> > > > > is wrong with that figure. They store 12 logical sectors in 20
> > > > > physical sectors across 4 drives. With two lost disks there are 10
> > > > > physical sectors left from which we want to reconstruct 12 logical
> > > > > sectors. That is impossible.
> > > >
> > > > Might be the diagram is wrong.
> > >
> > > Could be the case, so until I find another description I will
> > > still not know how RAID-6 works.
> >
> > It's not just the diagram, the theory is wrong. You need to use at least
> > log2 n+1 disks for partition if you want to handle any two lost/borked
> > disks. (16 disks would give 11x diskspace).
>
> But there are other encodings with 2 extra disks that can
> handle 2 lost disks. And in general if you need x disks of
> space and the ability to recover from y lost disks you can
> do the encoding on x+y disks.
>
> Knowing that why do we even consider RAID-6? I guess RAID-6
> is a lot faster, is that true?
I just looked at it. It is possible allright and the diagram looks ok.
If you have 3 disks A,B and C the parity is calculated by dividing the diskw
into typical lines, in this example I use 3 like they use on the diagram. We
then have a parity per line and one per disk. You can only regenerate one
block per parity, but since you have two full independ parities you can
replace any two.
A1 B1 C1 P1 (P1 = A1^B1^C1)
A2 B2 C2 P2
A3 B3 C3 P3
PA PB PC
(PA=A1^A2^A3)
As you can see if you wish to chech the parity for one read line(eg.A1-C1),
you can check directly against the horizontal parity P1. But if you wish to
check the horizontal parity you need to read the entire diskarray!
In reality I think one would only check the horizontal parity on reads,
giving you protection against 1 disk-errors, and only use the vertical parity
in case you need to regenerate a two lost disks.
The real problem is on each writes you still need to access at least one full
disk, and possibly all disks. As they write: there are no know commercial
implementations. I wonder why!
next prev parent reply other threads:[~2002-06-04 13:58 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-06-02 23:01 RAID-6 support in kernel? Roy Sigurd Karlsbakk
2002-06-03 0:33 ` Derek Vadala
2002-06-03 8:24 ` Roy Sigurd Karlsbakk
2002-06-03 9:25 ` Derek Vadala
2002-06-03 9:31 ` Vojtech Pavlik
2002-06-03 14:52 ` Kasper Dupont
2002-06-03 14:55 ` Vojtech Pavlik
2002-06-04 12:49 ` Roy Sigurd Karlsbakk
2002-06-04 15:49 ` Pavel Machek
2002-06-04 22:27 ` Kasper Dupont
2002-06-05 9:36 ` Roy Sigurd Karlsbakk
2002-06-05 9:28 ` Roy Sigurd Karlsbakk
2002-06-05 2:51 ` jw schultz
2002-06-04 18:50 ` Bill Davidsen
2002-06-06 1:19 ` Derek Vadala
2002-06-06 8:28 ` Kasper Dupont
2002-06-03 7:35 ` Kasper Dupont
2002-06-03 8:28 ` Roy Sigurd Karlsbakk
2002-06-03 8:57 ` Kasper Dupont
2002-06-04 11:11 ` Allan Sandfeld
2002-06-04 12:51 ` Kasper Dupont
2002-06-04 13:58 ` Allan Sandfeld [this message]
2002-06-12 8:13 ` Kasper Dupont
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=200206041558.12209.linux@sneulv.dk \
--to=linux@sneulv.dk \
--cc=kasperd@daimi.au.dk \
--cc=linux-kernel@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