linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Scott Long <scott_long@adaptec.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Matt Domsch <Matt_Domsch@dell.com>, linux-raid@vger.kernel.org
Subject: Re: DDF Trial Use draft specification now publicly available
Date: Fri, 12 Mar 2004 15:27:05 -0700	[thread overview]
Message-ID: <40523939.8030609@adaptec.com> (raw)
In-Reply-To: <4052268A.2000806@pobox.com>

Jeff Garzik wrote:
> Scott Long wrote:
>  > Complexity != brokenness
> 
> Agreed, but complexity is also something that is one of the key things
> to resist...  Favorite Linus maxims include "don't overdesign" and "do
> what you need to do, and no more"  ;-)

Doing the job right might lead to complexity.  RAID is about doing the
job right.  The 'R' in RAID doesn't stand for 'Fast' or 'Simple'.

> 
> 
>  > Recording information about all disks and arrays on every disk means
>  > that you can detect when a whole array is missing.  The more complex
>  > array information means that you can express mutli-level arrays in a
>  > reasonable way.  We've already spoken a little bit about this.  There is
> 
> I think you're missing an overall point about scope.  DDF configuration
> is not global, from the standpoint of a Linux system.  md's
> configuration (raidtab, etc) is.
> 
> Therefore, from the standpoint from the entire Linux system, the
> definition "all disks and arrays" varies from one RAID "domain" to another.
> 
> This artificial partitioning into domains is obviously required for
> hardware RAID -- a single controller does not know anything more than
> what spindles are attached to it.
> 
> But...  this partitioning, the _initialization and ordering of domains_,
> varies from controller to controller, and sometimes AFAICS from one
> setup to setup.  The Linux kernel now has to organize all that into a
> coherent picture.
> 

The GUID _is_ unique, and is the authority.  The spec even details how
it is to be made unique so that it (hopefully) never collides between
domains.  Great care is taken in the spec to allow disks and arrays
to migrate between domains.  The only flaw is that it doesn't allow
the concept of overlapped domains, or disks with multiple parents.  But
that really isn't what you are talking about here.

As for domain scope within linux, it is a flaw of linux that the raid
raid stack can't reliably get pathing information to figure out it's
topology (and thus it's domain).

> "Getting RAID domains right" is where I see a lot of complexity...  The
> simplicity of md's raidtab provides the same thing in userspace -- just
> list the ordering in a text file.  The kernel only really cares about
> auto-running the RAID upon which your root filesystem (and raidtab) lives.

Linux raidtab doesn't allow you to boot off of your array.  Yes, there
are some hacks out there to boot off of a single disk of a mirror and
let MD/DM/whatever take over and supplant it with the real raid device.
That doesn't do anything for you when you are talking about RAID0 or
RAID10.

> 
> 
>  > also quite a bit of information in the format that allows you to
>  > validate each disk and determine how much your 'trust' it.  While this
>  > certainly adds complexity, it also strengthens the notion that RAID is
>  > about ensuring integrety.  Of course it doesn't slow down the actual
>  > transform of a raid-0, so you can still measure it's worthiness that
>  > way =-)
> 
> Yeah, the basic r/w fast path isn't too tough, it's not only  error
> handling but also the minute variations in RAID formats where things
> gets fun :)
> 

The role of the metadata is pretty insigificant in the scope of error
handling.  95% of the error handling code that we have in Enhanced MD
is independent of the metadata; the metadata code is only there to
record the state changes and decide if one state change leads to
another.

Scott


  reply	other threads:[~2004-03-12 22:27 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-11 15:45 DDF Trial Use draft specification now publicly available Matt Domsch
2004-03-11 16:08 ` Samuel Davidoff
2004-03-11 16:18   ` Matt Domsch
2004-03-11 20:43 ` Jeff Garzik
2004-03-12  7:27   ` Scott Long
2004-03-12 21:07     ` Jeff Garzik
2004-03-12 22:27       ` Scott Long [this message]
2004-03-11 22:07 ` Jeff Garzik
2004-03-12  7:55   ` Scott Long

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=40523939.8030609@adaptec.com \
    --to=scott_long@adaptec.com \
    --cc=Matt_Domsch@dell.com \
    --cc=jgarzik@pobox.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).