Use mdadm for BIOS RAID Support in Anaconda
Use mdadm instead of dmraid to support BIOS RAID (Firmware RAID or Fake RAID) during the Fedora installation process.
- Name: Vojtech Trefny (Blivet), Vendula Poncova (Anaconda)
- Email: vtrefny AT redhat.com, vponcova AT redhat.com
- Targeted release: Fedora Linux 38
- Last updated: 2023-02-02
- devel thread
- FESCo issue: #2922
- Tracker bug: #2158574
- Release notes tracker: #948
Anaconda (or to be more precise Blivet, the storage library Anaconda uses) is currently using dmraid to support the BIOS RAID devices (sometimes also called Firmware or Fake RAID) during installation. We plan to replace dmraid by mdadm, which we are currently using for software RAID management. The main reason is that dmraid is no longer actively maintained. mdadm supports the two major BIOS RAID technologies: Common RAID Disk Data Format (DDF) standard by SNIA and Intel Matrix Storage Manager format. mdadm is missing support for some older BIOS RAID formats that existed before DDF and are still supported by dmraid so by implementing this change, we will remove support for some BIOS RAID formats from the installer.
We tried to get feedback from the community to find out how many users use BIOS RAID and would be affected by this change (especially by removing support for the older formats). The only response was from the Fedora QA which has an Intel Matrix machine for testing which should be supported by mdadm.
Benefit to Fedora
Replacing a tool/library that is no longer being actively developed and maintained. Because we are replacing it with a tool that is currently used for software RAID management in the installer, this also means removing one dependency from the installer environment and remove the dmraid startup service from the installed system.
- Proposal owners: Changes to Blivet (replacing dmraid with mdadm for the specified BIOS RAID formats) and Anaconda (removing the
- Other developers:
- Release engineering: #Releng issue number
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives:
This change will affect only new installations (the change only changes behaviour of the installer).
How To Test
A hardware with BIOS RAID support (DDF or IMSM) is needed. You can also create a "fake" DDF RAID in a VM with
mdadm using these two commands:
mdadm --create /dev/md/ddf --run --level=container --metadata=ddf --raid-disks 2 /dev/sdX /dev/sdY
mdadm --create /dev/md/vol0 --run --level=raid0 --raid-devices=1 /dev/md/ddf --force
/dev/sdY with two empty disk of the same size. In the installer you should see this array as BIOS RAID set with the name vol0 in the Installation Destination spoke. Note that since this is a VM an doesn't have the required firmware, the installed system won't boot unless you put
/boot and bootloader on a separate "normal" disk (but you can still test the installation procedure).
To test the feature simply select the BIOS RAID array as installation target. You follow the QA test case for installing on BIOS/Firmware RAID: QA:Testcase_install_to_firmware_RAID.
Users with supported BIOS RAIDs shouldn't notice a change, the installation should work the same for them. Users with older unsupported BIOS RAID formats won't be able to install Fedora on these arrays. For these users we'll recommend switching to software RAID.
- Contingency mechanism: Revert the changes and keep using dmraid for all BIOS RAID formats.
- Contingency deadline: Beta
- Blocks release? No
N/A (not a System Wide Change)