View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000609 | AlmaLinux-10 | General | public | 2026-03-09 06:36 | 2026-03-09 06:36 |
| Reporter | theorin | Assigned To | |||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | new | Resolution | open | ||
| Platform | x86_64_v2 | OS | AlmaLinux | OS Version | 10 |
| Summary | 0000609: akmods rebuilds nvidia kmod on every boot on x86_64_v2 — weak-updates directory not RPM-owned | ||||
| Description | On AlmaLinux 10 x86_64_v2, akmods rebuilds the nvidia kmod from source on every boot (0000017:0000020 seconds delay) despite the module being correctly installed and functional. Root cause: The check_kmod_up2date function in akmods uses: rpm -qf "/lib/modules/${kernelver}/extra/${kmodname}/" to verify the installed kmod package. On x86_64_v2, the kmod RPM (kmod-nvidia-6.12.0-124.el10_1-580.95.05-1.el10.x86_64_v2) only installs files into the kernel it was built for: /lib/modules/6.12.0-124.13.1.el10_1.x86_64_v2/extra/nvidia/ For newer kernels, weak-modules creates symlinks in: /lib/modules/6.12.0-124.38.1.el10_1.x86_64_v2/weak-updates/nvidia/ However the extra/nvidia/ directory for the newer kernel is NOT owned by any RPM package — it is created by akmods itself during the rebuild. Therefore rpm -qf returns "not owned by any package", version comparison fails, and akmods triggers a full rebuild every boot. The rebuild completes successfully but installs nothing new since the package is already installed — confirmed by DNF output: "Package already installed. Nothing to do." This is a packaging bug specific to x86_64_v2 — the kmod RPM does not include weak-updates entries or extra/ directories for kernels beyond the one it was built against, and akmods does not check weak-updates paths during its up-to-date verification. Workaround applied: sudo systemctl edit akmods.service [Service] ExecStart= ExecStart=/bin/bash -c 'modinfo nvidia -k $(uname -r) -n 2>/dev/null | grep -q "nvidia.ko" && exit 0 || exec /usr/sbin/akmods --from-init' This replaces the broken version check with a direct modinfo query, skipping the rebuild when the module is already available for the running kernel regardless of installation path. | ||||
| Steps To Reproduce | 1. Install AlmaLinux 10 x86_64_v2 2. Install akmod-nvidia via ELRepo 3. Update kernel — new kernel gets nvidia via weak-updates symlinks 4. Reboot — observe akmods rebuilding every boot despite working module Expected: akmods skips rebuild when module loads correctly Actual: akmods rebuilds from source every boot, adding ~20s to boot time | ||||
| Additional Information | AlmaLinux 10 x86_64_v2 (microarchitecture level 2 variant) Kernel: 6.12.0-124.38.1.el10_1.x86_64_v2 akmod-nvidia: 580.95.05-1 ELRepo repository | ||||
| Tags | akmods, alma10, boot, v2 | ||||