Subject: bug#17994: Linux RAID MBR type code

From: Phillip Susi <[email-masked]>
Date: Mon, 14 Jul 2014 17:02:44 -0400

On 7/14/2014 4:03 PM, Chris Murphy wrote:
> They look at the type code first. If it's a type code they support,
> but the partition isn't something they expect, they actively
> suggest the user initialize the partition. It's similar for
> Windows.

Right, so they look for their own type code and ignore everything else,
including 0x83 and 0xfd.

>> In any case, if they already deal with 0xfd correctly, why 
>> change?
> 
> This is made clear in the mdadm page page, as well as the 
> previously cited bug comment by Doug Ledford who is an md raid 
> kernel developer.

No, it isn't... the only thing it says about it is that it "might create
problems in the event of array recovery through a live cdrom" which is
hand waving.

> man 8 mdadm "the partition type should be set to 0xDA"
> 
> Oxford American English: should |SHo͝od| modalverb ( 3rd sing. 
> should ) 1 used to indicate obligation, duty, or correctness,
> 
> The man page goes on to explain the problem with using 0xfd or 0x83
> for 1.x metadata arrays.

Previously you referred to the wiki page which made it clear that it
doesn't matter.  Now you point to the man page, which yes, does say to
use 0xda, but fails to explain why beyond hand waving.

> Right, let's wait for problems to happen rather than avoid them in
>  the first place.

Right, let's needlessly complicate users lives' over hypothetical
hand waving.

0xfd already tells all who care to keep their mitts off unless they
understand mdadm.  I have yet to see any concrete reason, even a
hypothetical one, for adding a new type to differentiate between 0.9 and
1.x.

> 0xfd is defined as "Linux raid autodetect" which is what parted 
> also calls it. But mdadm metadata 1.x is not autodetect. And
> you're saying calling it the wrong thing is nevertheless still OK
> because it doesn't matter. It's fingers in the ears lalala logic.

So remove the word "autodetect" if you don't like it.  What difference
does it make?  Most people see the word raid and figure that's what
they should use.  "But it isn't really autodetect!" or other semantic
arguments is not a good reason to add yet another code.

Are we also supposed to allocate a new GUID for GPT partitions?  The
man page is mum on that subject.  That, combined with the hand waving
explanation given, indicates that this was not well thought out when
it was added to the man page.