Originally posted by aufkrawall
View Post
In practice, it is. To use the proprietary drive, you need a shim - the nv module - to be compiler and loaded.
Linux Kernel is constantly under development (well, that's actually one of the key point of opensource...)
Because it's a shim, nv is developed outside of the normal linux kernel tree and isn't developed by the regular linux kernel devs.
(As opposing to the closed source AMDGPU-PRO driver, which relies on the opensource amdgpu.ko kernel module, the same module that the opensource driver uses too, and which is part of the vanilla linux kernel tree.)
Regularily, the compilation of NV will break. Because some change in the Linux kernel affects it, but as it is developed out-of-tree, it won't receive fixes on time for the Linux release. You have to wait the the Nvidia linux devs to catch up with the linux kernel evolution.
This makes it particularly difficult for rolling distro, which tend to very quickly jump to newer kernels. Nvidia doesn't want to spend the resources tracking every single last kernel to make sure that nv compiles successfully, just in case that some distro somewhere might decide to switch to it (tough this could be considered understandable).
Usually, you're better off using a big distribution like Ubuntu or RedHat/CentOS, because chances are that Nvidia will have better tested with their kernel.
Or use a distribution which uses a kernel version that is identical to the one used by big distros.
---
My self, I've decided to drop the Nvidia binary, and rely on the opensource Nouveau with my laptop (running OpenSuse Tumbleweed - a rolling distro).
(With an Nvidia GPU soldered on the mother board. Not an MXM module that I could hope to somehow replace).
At least I can get the latest version of the code, both for GFX drivers, and everything else that gets updated with kernel releases.
And I can tolerate the occasional quirk of nouveau bugs on some revisions (due to nouveau being nearly entirely developed by reverse engineering, with very little input from Nvidia).
Comment