linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: John Robinson <john.robinson@anonymous.org.uk>,
	David Brown <david.brown@hesbynett.no>,
	Oliver Martin <oliver@volatilevoid.net>,
	linux-raid@vger.kernel.org
Subject: Re: Creating a 3-disk RAID6 array
Date: Fri, 18 May 2012 17:57:00 +1000	[thread overview]
Message-ID: <20120518175700.61337765@notabene.brown> (raw)
In-Reply-To: <4FB5FAA7.4090401@zytor.com>

[-- Attachment #1: Type: text/plain, Size: 1572 bytes --]

On Fri, 18 May 2012 00:30:47 -0700 "H. Peter Anvin" <hpa@zytor.com> wrote:

> On 05/17/2012 07:04 AM, John Robinson wrote:
> > On 17/05/2012 14:18, David Brown wrote:
> > [...]
> >> Theoretically, a 3-disk RAID6 is like a 2-disk RAID5 or a 1-disk RAID1 -
> > [...]
> >> I can't think of any good reason for it /not/ to support 3-disk
> >> RAID6, as there is nothing in the algorithms to hinder it.
> > 
> > I've a vague recollection of Peter Anvin saying the implementation is
> > optimised in such a way that it won't work.
> > 
> 
> Yes, it would have required introducing some odd special cases.  A
> 3-disk RAID-6 is bitwise identical to a 3-disk RAID-1, so if Neil wants
> to he could add "instant reshaping" support in mdadm (add a disk to a
> 3-disk RAID-1 turning it into a 4-disk RAID-6; and similar for 2-disk
> RAID-1 into 3-disk RAID-5.)
> 
> 	-hpa
> 

Converting a 2-disk RAID-1 to a 3-disk RAID-5 is not instant.
You first convert a 2-disk RAID-1 to a 2-disk RAID-5.  Then you re-stripe the
RAID-5 to have 3-disks.  During this restripe, part of the array looks like a
2-disk RAID-5, and part looks like a 3-disk RAID-4.

To convert some sort of RAID1 to RAID6 we would need to be able to support a
3-disk RAID-6, if only for a relatively short time.

Possibly we could special case the parity-generation code to just copy the
data block when data-disks==1.  That sound easy enough...
But the raid456 module needs to understand this
3-way-RAID1-pretending-to-be-RAID6, we cannot use the raid1 module to do it.

NeilBrown

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

  reply	other threads:[~2012-05-18  7:57 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-17  1:24 Creating a 3-disk RAID6 array Oliver Martin
2012-05-17  1:38 ` NeilBrown
2012-05-17 13:18   ` David Brown
2012-05-17 14:04     ` John Robinson
2012-05-18  7:24       ` David Brown
2012-05-18  7:30       ` H. Peter Anvin
2012-05-18  7:57         ` NeilBrown [this message]
2012-05-19  0:04           ` H. Peter Anvin
2012-05-17 21:02   ` Dan Williams
2012-05-17 23:27     ` Oliver Martin
2012-05-17  4:22 ` Bill Davidsen
2012-05-18  2:36 ` Stan Hoeppner

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=20120518175700.61337765@notabene.brown \
    --to=neilb@suse.de \
    --cc=david.brown@hesbynett.no \
    --cc=hpa@zytor.com \
    --cc=john.robinson@anonymous.org.uk \
    --cc=linux-raid@vger.kernel.org \
    --cc=oliver@volatilevoid.net \
    /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).