Comment by apatheticonion
10 months ago
That's interesting. Dumb question but why doesn't Linux aim for a stable driver ABI? Does it impede delivery speed?
I think nvidia uses out-of-tree drivers that are dynamically loaded - does that mean that nvidia drivers are tied to specific kernel versions?
The rationale for not having a stable driver ABI is here: https://www.kernel.org/doc/Documentation/process/stable-api-...
RE: nvidia - yes
nvidia uses "DKMS" to rebuild itself for each running kernel.
Closed source modules like nvidia frequently have a kernel-independent proprietary piece and a kernel-specific (open source) ABI piece. Whenever you upgrade your kernel, DKMS will re-build the kernel-specific shim and re-link the proprietary blob. The result is a .ko tailor made for your running kernel, even though most of the code is in a kernel-independent blob.
It looks like nVidia is open to moving their open driver (which requires a card that as a GSP) upstream [1] but with Rust being killed from the Linux kernel that's probably dead.
[1] https://www.phoronix.com/news/NVIDIA-Exploring-Upstream-KMD