Rebuild initramfs on initial install to include GSP firmware #18

Merged
alukoshko merged 2 commits from jonathan/nvidia-open-kmod:initramfs-dev into main 2026-07-19 19:19:20 +00:00
Owner

Fixes a first-boot failure where the NVIDIA open modules can't find their GSP firmware. This is due to an ordering issue when the initramfs rebuild occurs during scriptlets.


On a fresh dnf install nvidia-open-kmod nvidia-driver, the first boot fails with:

nvidia 0000:xx:00.0: Direct firmware load for nvidia/<ver>/gsp_ga10x.bin failed with error -2
[drm:nv_drm_dev_load [nvidia_drm]] *ERROR* Failed to allocate NvKmsKapiDevice

During the install transaction the initramfs is regenerated before the firmware (shipped by nvidia-kmod-common) is on disk, so the module loads early without it. A manual dracut -f afterward fixes it, which confirms the firmware is present on disk, just not captured in the initramfs the transaction left behind.

Fixes a first-boot failure where the NVIDIA open modules can't find their GSP firmware. This is due to an ordering issue when the initramfs rebuild occurs during scriptlets. --- On a fresh `dnf install nvidia-open-kmod nvidia-driver`, the first boot fails with: nvidia 0000:xx:00.0: Direct firmware load for nvidia/<ver>/gsp_ga10x.bin failed with error -2 [drm:nv_drm_dev_load [nvidia_drm]] *ERROR* Failed to allocate NvKmsKapiDevice During the install transaction the initramfs is regenerated before the firmware (shipped by `nvidia-kmod-common`) is on disk, so the module loads early without it. A manual `dracut -f` afterward fixes it, which confirms the firmware is present on disk, just not captured in the initramfs the transaction left behind.
This reverts commit 196c7dc65a.
The open modules load GSP firmware (nvidia/<ver>/gsp_*.bin) early from the
initramfs. On a fresh install the initramfs is regenerated before that
firmware is on disk, so the first boot fails with
"gsp_*.bin failed with error -2" until a manual "dracut -f".

Add a %posttrans that rebuilds the initramfs after every payload in the
transaction has landed, guaranteeing the firmware is captured. Gate it to
the initial install with a %ghost stamp file, since $1 cannot distinguish
install from upgrade in %posttrans.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rpms/nvidia-open-kmod!18
No description provided.