i'm building nvidia kernel mod, for use with a pci nvidia card
inxi -G | grep Dev
Graphics: Device-1: NVIDIA GK208B [GeForce GT 710] driver: N/A
Device-2: Advanced Micro Devices [AMD/ATI] Cezanne driver: N/A
on a new install/build,
cat /proc/cpuinfo | grep "model name" | uniq model name : AMD Ryzen 5 5600G with Radeon Graphics
on
lsb_release -rd Description: Fedora release 34 (Thirty Four) Release: 34 uname -r 5.14.13-200.fc34.x86_64 dkms -V dkms-2.8.6 gcc --version gcc (GCC) 11.2.1 20210728 (Red Hat 11.2.1-1) BIOS is fully updated; secure boot's disabled
mokutil --sb-state SecureBoot disabled Platform is in Setup Mode
build, as per my usual, is with upstream's `nvidia-installer`,
F="NVIDIA-Linux-x86_64-470.74-no-compat32" wget http://http.download.nvidia.com/XFree86/Linux-x86_64/470.74/$%7BF%7D.run
chmod +x ${F}.run ./${F}.run --extract-only cd ${F}/
dkms status -m nvidia --all (empty)
./nvidia-installer --expert \ --dkms \ --accept-license \ --ui=none \ --no-questions \ --disable-nouveau --no-nouveau-check \ --no-check-for-alternate-installs \ --no-distro-scripts \ --force-selinux=no \ --no-systemd \ --no-install-compat32-libs \ --no-install-libglvnd \ --no-cc-version-check \ --no-precompiled-interface
which FAILs @ `modprobe`
... Searching for conflicting files: Searching: [##############################] 100% Installing 'NVIDIA Accelerated Graphics Driver for Linux-x86_64' (470.74): Installing: [##############################] 100% Driver file installation is complete. Installing DKMS kernel module: Adding to DKMS: [##############################] 100%
ERROR: Unable to load the 'nvidia-drm' kernel module: 'modprobe: ERROR: could not insert 'nvidia_drm': Exec format error'
ERROR: Installation has failed. Please see the file '/var/log/nvidia-installer.log' for details. You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
and
dmesg ... [13680.181756] module: x86/modules: Skipping invalid relocation target, existing value is nonzero for type 1, loc 000000005a6a71ea, val ffffffffc1979de7
and a not-particularly-helpful,
cat /var/log/nvidia-installer.log -> Executing: /usr/sbin/ldconfig executing: '/usr/sbin/ldconfig'... -> done. -> Driver file installation is complete. -> Installing DKMS kernel module: -> done. ERROR: Unable to load the 'nvidia-drm' kernel module: 'modprobe: ERROR: could not insert 'nvidia_drm': Exec format error' ERROR: Installation has failed. Please see the file '/var/log/nvidia-installer.log' for details. You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
the mods *are* built
cd /var/lib/dkms/nvidia/kernel-5.14.13-200.fc34.x86_64-x86_64/module/ treev ├── [-rw-r--r-- root 24048 2021-10-23 18:18:00 -0400] nvidia-drm.ko.xz ├── [-rw-r--r-- root 23785248 2021-10-23 18:17:59 -0400] nvidia.ko.xz ├── [-rw-r--r-- root 515764 2021-10-23 18:18:00 -0400] nvidia-modeset.ko.xz ├── [-rw-r--r-- root 996 2021-10-23 18:18:00 -0400] nvidia-peermem.ko.xz └── [-rw-r--r-- root 342256 2021-10-23 18:17:59 -0400] nvidia-uvm.ko.xz
and installed in module tree
find /lib/modules/5.14.13-200.fc34.x86_64/ | grep extra/nvidia.*ko /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia-drm.ko.xz /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia-peermem.ko.xz /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia.ko.xz /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia-modeset.ko.xz /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia-uvm.ko.xz
but aren't insertable
lsmod | grep nvidia (emtpy)
modinfo nvidia-drm filename: /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia-drm.ko.xz version: 470.74 supported: external license: MIT srcversion: CBB4EE4C99F37AD0FDDB887 alias: pci:v000010DEd*sv*sd*bc03sc02i00* alias: pci:v000010DEd*sv*sd*bc03sc00i00* depends: drm,drm_kms_helper,nvidia-modeset retpoline: Y name: nvidia_drm vermagic: 5.14.13-200.fc34.x86_64 SMP mod_unload parm: modeset:Enable atomic kernel modesetting (1 = enable, 0 = disable (default)) (bool)
modprobe -vv nvidia-drm modprobe: INFO: custom logging function 0x563195d29840 registered insmod /lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia.ko.xz modprobe: INFO: Failed to insert module '/lib/modules/5.14.13-200.fc34.x86_64/extra/nvidia.ko.xz': Exec format error modprobe: ERROR: could not insert 'nvidia_drm': Exec format error modprobe: INFO: context 0x563196797720 released
atm I've got access to just one other Ryzen box, with a non-GPU cpu, and a slightly newer Nvidia pci card,
cat /proc/cpuinfo | grep "model name" | uniq model name : AMD Ryzen 7 3700X 8-Core Processor inxi -G | grep Dev Graphics: Device-1: NVIDIA GP108 [GeForce GT 1030] driver: nvidia v: 470.74
but otherwise similarly setup (F34, kernel, etc); no problems with exactly the same nvidia build procedure,
lsmod | grep -i nvidia nvidia_drm 69632 7 nvidia_modeset 1200128 23 nvidia_drm nvidia 35332096 1557 nvidia_modeset drm_kms_helper 303104 1 nvidia_drm drm 630784 13 drm_kms_helper,nvidia,drm_ttm_helper,nvidia_drm,ttm
headers & version magic all seem to match on both systems
other than the nvidia mod insertion fail, there are no other, obvious problems; not clear to me what/why is possibly machine/env-specific ...
i've been chasing a solution, so far with no luck :-/
any suggestions as to what the cause might be, and any fix?
This is what I found. "11 hour ago" https://forums.developer.nvidia.com/t/nvidia-470-74-build-error-unable-to-lo...
On 10/24/21 00:10, Reon Beon via devel wrote:
This is what I found. "11 hour ago" https://forums.developer.nvidia.com/t/nvidia-470-74-build-error-unable-to-lo...
Right. I posted it.
randomly poking at headers, just
dnf reinstall kernel-devel
made no difference to the problem
but, complete removal/install
dnf remove kernel-devel dnf reinstall kernel-core dnf install kernel-devel dkms bison flex
did.
now, after nvidia install & subsequent modprobe,
lsmod | grep nvidia nvidia_drm 69632 0 nvidia_modeset 1200128 1 nvidia_drm nvidia 35332096 1 nvidia_modeset drm_kms_helper 303104 2 amdgpu,nvidia_drm drm 630784 8 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
no idea why on a new/clean install this was necessary, or what diagnostic should've indicated the problem.
in any case, sorted.
You could use rpm fusion nonfree nvidia in the software updater
Also: https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-495.44-Linux-...