Bug 1927336

Summary: Review PXE Anaconda initramdisk to shrink size
Product: [Fedora] Fedora Reporter: Lukas Zapletal <lzap>
Component: loraxAssignee: Brian Lane <bcl>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 35CC: anaconda-maint-list, bcl, jonathan, kellin, reallylongword, vanmeeuwen+fedora, vponcova, wwoods
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: lorax-37.2-1.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-05-23 18:26:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Lukas Zapletal 2021-02-10 14:41:44 UTC
Hello,

over the past couple years, PXE init RAM disk has grown quite a bit. I
understand that there are more and more linux kernel network drivers,
but I wonder if we review the included list of modules from time to
time. Is it time to drop some old ones? Here are rough numbers from CentOS and I assume this is the same for Fedora:

7.0: 33 MB
7.5: 50 MB
7.8: 53 MB
8.0: 58 MB
8.1: 59 MB
8.2: 62 MB
8.3: 70 MB

The reason why I ask is that many customers rely on PXE which is based
on TFTP protocol that is quite unreliable. In the Satellite group, we
have customers who provision RHEL servers in moving trains or ships
and together with RHEL bootloader team we were working hard on
delivering UEFI HTTP Boot feature into grub2 and Satellite, but many
customers are stuck with PXE for years to come.

I would like to ask for exploring what are the options of removing unwanted files. It looks like the biggest offender is linux-firmware package, few candidates would be:

30M     ./amdgpu
35M     ./netronome

These Agilio blobs are huge, I tried to compare them if they are just copies but they look unique.

I don't know if Anaconda component is the correct one, feel free to flip it over. Thanks.

Comment 1 Lukas Zapletal 2021-02-10 14:46:59 UTC
Other ideas from my work on shrinking down Fedora LiveCD (we use in our project for hardware inventory purposes):

WiFi:

-iwl7260-firmware
-iwl3160-firmware
-iwl6000g2b-firmware
-iwl6000g2a-firmware
-iwl5000-firmware
-iwl6050-firmware
-iwl2030-firmware
-iwl135-firmware
-iwl2000-firmware
-iwl105-firmware
-iwl1000-firmware
-iwl6000-firmware
-iwl100-firmware
-iwl5150-firmware
-iwl4965-firmware
-iwl3945-firmware

Enterprise network:

-liquidio-firmware
-netronome-firmware

Sound and video firmware (ALSA, GPU drivers) - most of these are probably on the LiveCD overlay not on the init RAM disk.

Comment 2 Vendula Poncova 2021-02-12 10:57:00 UTC
I don't think these are Anaconda's dependencies. Reassigning to lorax.

Comment 3 Ben Cotton 2021-08-10 12:51:17 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 35 development cycle.
Changing version to 35.

Comment 4 Brian Lane 2022-05-18 23:05:46 UTC
Adam Williamson has been doing some work to reduce unneeded firmware use so this is now better than it was. Current firmware install command looks like this:

installpkg --optional *-firmware --except alsa* --except midisport-firmware \
 --except crystalhd-firmware --except ivtv-firmware \
 --except cx18-firmware --except iscan-firmware \
 --except uhd-firmware --except lulzbot-marlin-firmware \
 --except gnome-firmware --except sigrok-firmware \
 --except liquidio-firmware --except netronome-firmware \
 --except mrvlprestera-firmware