Fedora 32 RPMfusion nvidia 390.xx wont compile on Kernel 5.9

Hi All,

I was fighting with my PC upgrading to Fedora 32 (from 31) and all went like a charm, but the nvidia driver wont compile with akmod.

After a day googling also on this Fedora 32 loading Nouveau and not nVidia drivers , I found that akmod-nvidia-390xx-390.138-3.fc32.x86_64 fail to build modules on kernel drivers on 5.9.8.100 (and also 5.9.9.100).
I attach part of the error in /var/cache/akmod/

2020/11/23 08:26:58 akmodsbuild: make[2]: *** [scripts/Makefile.build:283: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv-frontend.o] Error 1
2020/11/23 08:26:58 akmodsbuild: make[2]: *** [scripts/Makefile.build:283: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv-gpu-numa.o] Error 1
2020/11/23 08:26:58 akmodsbuild: In file included from /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv-dma.c:15:
2020/11/23 08:26:58 akmodsbuild: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/common/inc/nv-linux.h: At top level:
2020/11/23 08:26:58 akmodsbuild: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/common/inc/nv-linux.h:164:10: fatal error: linux/ioctl32.h: No such file or directory
2020/11/23 08:26:58 akmodsbuild: 164 | #include <linux/ioctl32.h>          /* register_ioctl32_conversion()    */
2020/11/23 08:26:58 akmodsbuild: |          ^~~~~~~~~~~~~~~~~
2020/11/23 08:26:58 akmodsbuild: cc1: some warnings being treated as errors
2020/11/23 08:26:58 akmodsbuild: compilation terminated.
2020/11/23 08:26:58 akmodsbuild: make[2]: *** [scripts/Makefile.build:283: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv-dma.o] Error 1
2020/11/23 08:26:58 akmodsbuild: In file included from /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv.c:13:
2020/11/23 08:26:58 akmodsbuild: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/common/inc/nv-linux.h: At top level:
2020/11/23 08:26:58 akmodsbuild: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/common/inc/nv-linux.h:164:10: fatal error: linux/ioctl32.h: No such file or directory
2020/11/23 08:26:58 akmodsbuild: 164 | #include <linux/ioctl32.h>          /* register_ioctl32_conversion()    */
2020/11/23 08:26:58 akmodsbuild: |          ^~~~~~~~~~~~~~~~~
2020/11/23 08:26:58 akmodsbuild: cc1: some warnings being treated as errors
2020/11/23 08:26:58 akmodsbuild: compilation terminated.
2020/11/23 08:26:58 akmodsbuild: make[2]: *** [scripts/Makefile.build:283: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64/nvidia/nv.o] Error 1
2020/11/23 08:26:58 akmodsbuild: make[1]: *** [Makefile:1784: /tmp/akmodsbuild.2m8HuSuU/BUILD/nvidia-390xx-kmod-390.138/_kmod_build_5.9.9-100.fc32.x86_64] Error 2
2020/11/23 08:26:58 akmodsbuild: make[1]: Leaving directory '/usr/src/kernels/5.9.9-100.fc32.x86_64'
2020/11/23 08:26:58 akmodsbuild: make: *** [Makefile:81: modules] Error 2
2020/11/23 08:26:58 akmodsbuild: error: Bad exit status from /var/tmp/rpm-tmp.WceCMn (%build)
2020/11/23 08:26:58 akmodsbuild: 
2020/11/23 08:26:58 akmodsbuild: 
2020/11/23 08:26:58 akmodsbuild: RPM build errors:
2020/11/23 08:26:58 akmodsbuild: user mockbuild does not exist - using root
2020/11/23 08:26:58 akmodsbuild: group mock does not exist - using root
2020/11/23 08:26:58 akmodsbuild: user mockbuild does not exist - using root
2020/11/23 08:26:58 akmodsbuild: group mock does not exist - using root
2020/11/23 08:26:58 akmodsbuild: user mockbuild does not exist - using root
2020/11/23 08:26:58 akmodsbuild: group mock does not exist - using root
2020/11/23 08:26:58 akmodsbuild: user mockbuild does not exist - using root
2020/11/23 08:26:58 akmodsbuild: group mock does not exist - using root
2020/11/23 08:26:58 akmodsbuild: user mockbuild does not exist - using root
2020/11/23 08:26:58 akmodsbuild: group mock does not exist - using root
2020/11/23 08:26:58 akmodsbuild: Bad exit status from /var/tmp/rpm-tmp.WceCMn (%build)
2020/11/23 08:26:58 akmodsbuild: 
2020/11/23 08:26:58 akmods: Building rpms failed; see /var/cache/akmods/nvidia-390xx/390.138-3-for-5.9.9-100.fc32.x86_64.failed.log for details

I’d really like to start on 5.9 kernel because with nouveau my pc is unstable and the desketopo get stuck after a while.

Any help appreciated.

SR

1 Like

I think perhaps this is the problem:

I did hear that they’ve made a minor release that should temporarily fix the issue, but since I’m not an nvidia user, I don’t know the details. If it has been released, it’ll be pushed to RPM Fusion soon too.

3 Likes

I had this with my upgrade to 33 from 32. I just downloaded the installer from nvidia and built and installed the drivers from a terminal in run level 3. A Howto on manual install. Although I am not on the legacy drivers. If you can’t get that to work just downgrade the kernel to a supported one which should allow you to install the rpm.
get drivers here: https://www.nvidia.com/en-us/geforce/drivers/

We generally ask folks to avoid using the driver released by nvidia directly—it often does things that break systems (used to even compile a custom kernel when I used it last). RPM Fusion’s kmods are the exact same thing, but sanitised to work well with Fedora. So, the best thing to do is to wait for RPM Fusion to push an update for the latest kernel. You can speak to them directly on their communication channels too:

3 Likes

I did notice difficulty with VLC not automatically allocating MJPG libs to render video but was able to tell it to and qv4l2 is dead but this was true since the upgrade to 33. This upgrade 32/33 seems like quite a mess but 32 was my first time spending any time with the RED distro which I find I like regardless of its quirks.
Thanks for the info FranciscoD!

Hi,
Thanks @youtubezombie but using the rpmfusion or negativo17 is a better way to have not to reinstall invidia driver in runlevel 3 each time the kernel is updated.

Thanks @FranciscoD,
I’ll do it as soon as i can.

2 Likes

Hi all.

I think it is important to specify that the nvidia driver affected by this issue is version 390.

The Nvidia 455 driver is the one that has been postponed. The Nvidia 390 driver is no longer handled by Nvidia developers as punctually as the 455 one.

Therefore, it is important to notify rpmfusion specifically that the nvidia 390 driver with kernel 5.9 and Fedora 32+ does not work because it does not compile.

Nvidia developers no longer directly update version 390 for these drawbacks, so it is impossible, at the moment, upgrade to Fedora 33 for those using Nvidia driver 390.

2 Likes

About how long until we see the patch applied and rolled out for 390.138?. This is holding up on two fronts now as we cant upgrade to fc 33 from 32 and go above kernel 5.8. I only rely on FC since the Lenovo T430 came with a nasty optimus IC and FC just keeps things stable.

Thanks in advance

rpmfusion maintainer of nvidia driver 390.xx, until now, do not respond to the issue resolution request.

There is a patch proposed by a user, which is neither integrated nor tested by the maintainer.

The link to the bug opened in rpmfusion, with the possible patch to be applied, is this: https://bugzilla.rpmfusion.org/show_bug.cgi?id=5840

I think the issue is that RPM Fusion do not have a maintainer (or do not have one with enough time to actively maintain this package) for the 390xx branch, or are looking for a new one. So if anyone here who uses the driver would like to help them with the package, please get in touch with them.

In general, RPM Fusion is run by very few volunteers, so please consider helping them maintain their packages.

So doing a quick updatedb / locate I see I have the src rpm for the fore mentioned nvidia akmod. So I have 2 questions regarding the patch.

1 - does this patch work if its not a 5.9 kernel ergo it wont brake anything else?.

2 - Would I need to unarchive then patch / build install the new src rpm ( I think this is obvious but being cautious for obvious reasons ) …

You are using the legacy 390 driver. You have not said what GPU you are using, but is it possible that it will work with the 455 driver?? If so then the nvidia drivers (455) from rpmfusion should work well.
I have 2 machines with the GTX 1050 cards and they are well supported with the 455 driver. I don’t have experience of which cards are below and which cards are above the breaking point between the 390 driver and the 455 driver. I have also read that the 960 is supported by the 455 drivers.

Hi @computersavvy,
I have an old 550TI and the designed driver is the legacy 399 (like my card).
I tryed the 455 too but it does not work and fedora rollback on nouveau which is unstable for my HW.

You might be out of luck for using that driver on fedora 33 and later at least for a time. That GPU is legacy and according to nvidia’s site they will still support it (at least marginally) thru 2022. As has already been said the support for kernel updates may be slow to be seen, so I would suggest upgrading your GPU to one that is supported with the mainline driver soon.

@computersavvy you are right.
But all my pc is ancient and I have to check if I can find a new card compatible with mobo… no “time” for a new PC at the moment…

The Nv chipset in this laptop is this one,

NVIDIA Corporation GF108M [NVS 5400M] (rev a1)

nothing above 390 supports it

I am currently using Fedora 33 with Nvidia 390 drivers. Here - in short - what I did:

  1. Upgraded to Fedora 33, and finally reboot in text mode - note: this is important, because rpmfusion nvidia driver 390 is not working with Fedora 33 - WARNING: do not remove the 5.8 kernel, in order to save the possibility to activate the graphic environment. If so, increase properly the value of installonly_limit parameter in the /etc/dnf/dnf.conf file.

  2. downloaded the Nvidia 390 patched drivers following the instructions on the site https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/ - for safety, this operation can also be done before the upgrade, and then repeat it again after the upgrade.

  3. Removed all rpmfusion nvidia 390 driver with dnf.

  4. Installed patched Nvidia driver downloaded from website above, following the simple instructions presented on the site.

  5. If considered possible, block kernel updates in /etc/dnf/dnf.conf file. So that you do not have to constantly check the compatibility of each kernel with Nvidia drivers.

At your choice. :slightly_smiling_face:

One minor correction: Drivers are apparently working (wonkily if you may) but its the CUDA support software and other such utilities which do not even compile on the kernel versions beyond 5.9.

The guide, the link of which you posted and the drivers from the official website must be avoided at all cost. Changes made via the official RUN file are generic to multiple distributions and are untrackable which means that recovering from those in a clean manner might just need a reinstall.

1 Like

Thanks a lot, i already know this possibility: “if not true then false” saved many of my days i the past coming from fedora 23 :grinning:

My problem is i cannot block kernel updates for security reason, and i alreay have auto-dnf enabled for this, then i can’t opt for this solution.

I bought a new graphic card supported from last 455 driver version waiting to see if the 390 will be pushed.