Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It can, but Linux does not have a stable driver ABI. Whoever wrote the out-of-tree drivers would have to constantly update them whenever there was a breaking change to the kernel, which I understand is relatively common.


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




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: