Skip to content

[RFC] kernels: enable CONFIG_FW_LOADER_COMPRESS#52686

Merged
classabbyamp merged 4 commits intovoid-linux:masterfrom
classabbyamp:linux-fw-loader-compress
Dec 21, 2024
Merged

[RFC] kernels: enable CONFIG_FW_LOADER_COMPRESS#52686
classabbyamp merged 4 commits intovoid-linux:masterfrom
classabbyamp:linux-fw-loader-compress

Conversation

@classabbyamp
Copy link
Member

@classabbyamp classabbyamp commented Oct 19, 2024

Enabling this will allow us to compress firmware files in linux-firmware, which provides a pretty massive storage saving for on-disk size:

linux-firmware            193MB  ->     24MB  (87.6%)
linux-firmware-amd         76MB  ->     26MB  (65.8%)
linux-firmware-broadcom    18MB  ->     12MB  (33.3%)
linux-firmware-intel       26MB  ->    9.9MB  (61.9%)
linux-firmware-network    615MB  ->    346MB  (43.7%)
linux-firmware-nvidia      63MB  ->     41MB  (34.9%)
linux-firmware-qualcomm   177MB  ->     71MB  (59.9%)
TOTAL                    1168MB  ->  529.9MB  (54.6%)

This is supported in all packaged kernels.

I plan on enabling compression in linux-firmware (the final commit in this PR) several months after merging the rest of this PR (early 2025). It probably make sense to announce this change, as it could cause unbootable systems.

Testing the changes

I tested the changes in this PR:

  • 5.4 x86_64 - amdgpu fails
  • 5.10 x86_64 - amdgpu fails
  • 5.15 x86_64 - amdgpu fails
  • 6.1 x86_64
  • 6.6 x86_64
  • 6.12 x86_64
  • 6.12 aarch64 (x13s)
  • 6.6 rpi (does not need linux-firmware, still boots)

[ci skip]

@classabbyamp classabbyamp marked this pull request as draft October 19, 2024 04:59
@classabbyamp
Copy link
Member Author

rfc @void-linux/pkg-committers

@classabbyamp classabbyamp changed the title kernels: enable CONFIG_FW_LOADER_COMPRESS [RFC] kernels: enable CONFIG_FW_LOADER_COMPRESS Oct 19, 2024
@classabbyamp classabbyamp force-pushed the linux-fw-loader-compress branch from a4b6b5c to decf0d6 Compare December 12, 2024 07:08
@leahneukirchen
Copy link
Member

Very nice!

@classabbyamp classabbyamp force-pushed the linux-fw-loader-compress branch from decf0d6 to 98e577f Compare December 12, 2024 23:52
@classabbyamp
Copy link
Member Author

because 5.x kernels have issues, I am just going to enable the kconfig option in 6.x kernels, so that when they are next built, they get the new options. Enabling the compressed build option in linux-firmware will have to wait until 5.x kernels are gone unless the issues are otherwise resolved.

@classabbyamp classabbyamp marked this pull request as ready for review December 13, 2024 00:04
@classabbyamp classabbyamp force-pushed the linux-fw-loader-compress branch from 98e577f to c227bcd Compare December 21, 2024 14:05
add build option for compression that will be made default at a later date.
@classabbyamp classabbyamp force-pushed the linux-fw-loader-compress branch from c227bcd to 15aa64f Compare December 21, 2024 14:06
@classabbyamp classabbyamp merged commit 3f9a08d into void-linux:master Dec 21, 2024
@classabbyamp classabbyamp deleted the linux-fw-loader-compress branch December 21, 2024 14:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants