raid10 vs raid01 type in dmraid

Gaston, Jason D jason.d.gaston at intel.com
Thu Jun 21 16:23:32 UTC 2007


>-----Original Message-----
>From: Heinz Mauelshagen [mailto:mauelshagen at redhat.com] 
>Sent: Thursday, June 21, 2007 3:38 AM
>To: Gaston, Jason D
>Cc: mauelshagen at redhat.com; ATARAID (eg, Promise Fasttrak, 
>Highpoint 370) related discussions
>Subject: Re: raid10 vs raid01 type in dmraid
>
>On Tue, Jun 19, 2007 at 03:52:14PM -0700, Gaston, Jason D wrote:
>> I think that the array for nested raid levels, in metadata.c, may be
>> upside down.  When I build a raid0+1 with Intel or Nvidia (one mirror
>> array of two stripe arrays), it is reported as a "raid10" 
>with [dmraid
>> -s], this should be "raid01".  If I reverse the nesting to raid10, in
>> Intel (one stripe array of two mirror arrays), it is reported as a
>> "raid01" with [dmraid -s], this should be "raid10".
>> 
>> Can we just reverse the array in metadata.c?
>
>Nope, this is a question of the definition of RAID10 and 
>RAID01 (or RAID0+1).
>
>I use RAID10 for a mirror on top of 2 (or more) striped sets vs.
>RAID01 for a stripe on top of 2 (or more) mirror sets in dmraid.
>
>Ie. looking at the device stack from the top to the bottom.
>
>So the example you made above (Intel or NVidia) with one mirror of
>2 striped arrays is a RAID10 by that definition.
>
>Heinz
>
>> 
>> From:
>> static const char *stacked_ascii_type[][5] = {
>> 	{ "raid10", "raid30", "raid40", "raid50", "raid60" },
>> 	{ "raid01", "raid03", "raid04", "raid05", "raid06" },
>> };
>> 
>> To:
>> static const char *stacked_ascii_type[][5] = {
>> { "raid01", "raid03", "raid04", "raid05", "raid06" },	
>> { "raid10", "raid30", "raid40", "raid50", "raid60" },
>> 	
>> }; 
>> 
>> Thanks,
>> 
>> Jason
>


Where did we get that definition for RAID10 from?  Everywhere that I
look I see the reverse definition for RAID10 vs RAID 0+1.  Nvidia even
defines their RAID as 0+1 in their OROM and MediaShield documentation.

Thanks,

Jason




More information about the Ataraid-list mailing list