Hans de Goede (hdegoede redhat com) said:
... why do we want to do this? Supporting two entirely separate code paths
for a single device is *bad*.
Because we will need both code paths anyways as for some bios-raid's mdraid
will be the preferred method, while others will only be supported by dmraid.
Sure, you have to keep dmraid around for some legacy BIOSes, but...
Given that we need the 2 code paths anyways, making which one to use
configurable when both support the type of bios-raid is much easier, and
certainly much less error prone, then trying to handle device name changes
when upgrading.
This means that for users of a particular BIOS, you get to write "If X, do
Y. If A, do B" sort of docs, which are always bad. You get to wire
distro-specific magic into anaconda, rc.sysinit, mkinitrd, dracut, etc.,
etc. You ensure that the old, dead, no longer maintained support for
whichever tool is non-default for a format can never be turned off.