https://fedoraproject.org/wiki/Changes/DisableDmraidOnFirstRun

== Summary ==
The Fedora workstation livecd is the default Fedora variant getfedora.org
advices people to download.
As such most Fedora workstation installs will be done from the livecd. This
means that any package which is part of the livecd will be part of the
default install for most users.

Dmraid is 1 of only 2 packages in the default install which still Requires
the long obsoleted systemd-udev-settle.service, which waits for all
device-detection to be done + some extra waiting just to be sure. This
significantly slows down booting on various systems.

Fedora only support these RAID sets when they are already configured in the
BIOS at installation time. So we can solve the problem of dmraid.service
still depending on the obsolete udev-settle service by making
dmraid.service disable itself if no supported RAID sets are found on its
first run.

== Owner ==
* Name: [[User:jwrdegoede| Hans de Goede]]
* Email: hdego...@redhat.com

== Detailed Description ==

Dmraid is 1 of only 2 packages in the default install which still Requires
the long obsoleted systemd-udev-settle.service. The other package is
device-mapper-multipath see
[[Changes/RemoveDeviceMapperMultipathFromWorkstationLiveCD|Remove
device-mapper-multipath from the Fedora workstation livecd]].

Dmraid is necessary to support firmware-raid (motherboard BIOS built-in
RAID support) for non Intel firmware RAID sets. These RAID sets are quite
rare and we have never supported configuring these RAID sets after the
installation without manually setting it up. Since we only support these
sets when they are already configured in the BIOS at installation time, we
can solve the problem of dmraid.service still depending on the obsolete
udev-settle service by making dmraid.service disable itself if no supported
RAID sets are found on its first run.

Note then when installing from the server or everything netboot isos,
dmraid depending on the obsolete udev-settle service is not a problem,
because then it will not be installed at all. Anaconda (the installer) adds
storage related packages such as dmraid to the installation package-set as
necessary for the storage found at installation time. This means that for
such installs, if a dmraid set is later configured, the user manually needs
to install dmraid to be able to use the RAID set. This change adds a
similar requirement to livecd installs, there the user will now need to do
a "systemctl enable dmraid.service" if a dmraid set is added to the system
later.

There has been [https://bugzilla.redhat.com/show_bug.cgi?id=1795014 a bug]
open against dmraid for this issue for a while now. As pointed out there,
this change can easily be implemented with some small changes to the shell
script which gets started by the dmraid service.

== Benefit to Fedora ==
systemd-udev-settle.service causes a significant and sometimes quite long
delay during boot. Removing / disabling the last 2 services depending on
this long obsolete helper service will remove the unnecessary boot delay.

== Scope ==
* Proposal owners:
** Prepare the suggested dmraid activation script changes and push out a
new dmraid package with these changes added
** Coordinate this with the dmraid maintainers

* Other developers:
** I will make sure that the dmraid maintainers are aware of and agree with
these changes. I will take care of these changes myself.

* Release engineering: [https://pagure.io/releng/issue/9559 #9559] (a check
of an impact with Release Engineering is needed)

* Policies and guidelines: N/A (not needed for this Change)

* Trademark approval: N/A (not needed for this Change)

== Upgrade/compatibility impact ==
After upgrading, if no dmraid sets are found on the first boot with the new
package, the dmraid service will disable itself, just as it will on new F33
installs.

== How To Test ==
# Install F33 on a machine / VM without dmraid
# Boot the installed system
# Reboot the installed system
# Do "systemctl status dmraid.service", the output should be "loaded (...;
disabled; ...)" and "inactive (dead)"

== User Experience ==
Faster booting Fedora when installed from the livecd.

== Dependencies ==
There are no other changes / package updates this Change depends on; or
which this change impacts.

== Contingency Plan ==
* Contingency mechanism: Revert the activation script changes if they cause
problems
* Blocks release? No

== Documentation ==
This change does not require any documentation.


-- 
Ben Cotton
He / Him / His
Senior Program Manager, Fedora & CentOS Stream
Red Hat
TZ=America/Indiana/Indianapolis
_______________________________________________
devel-announce mailing list -- devel-announce@lists.fedoraproject.org
To unsubscribe send an email to devel-announce-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org

Reply via email to