3 ms·
> Alternative perspective: the lack of any kind of stability in the driver ABI causes all the problems with the nVidia driver. Intel and AMD maintain their dri
by shmerl 8y ago
> Alternative perspective: the lack of any kind of stability in the driver ABI causes all the problems with the nVidia driver.
Intel and AMD maintain their drivers upstream, and don't have anything resembling Nvidia's problems (general lack of integration). The later ones are very clearly the result of them refusing to upstream it.
To put it differently, Nvidia can make their driver integrated, they just don't want to and it has nothing to do with how fast kernel interfaces are evolving. Case in point, Nvidia do update their dkms exposed parts of the driver, to address kernel changes. If they won't, their driver won't work at all, even through dkms.
> Who said it had to be forever?
You said "be done with it", which means no one will maintain it expecting it to be forever compatible? Otherwise I'm not sure what your point was.
- AnIdiotOnTheNet 8y agoI'm giving nVidia the benefit of the doubt and assuming they have legitimate reasons for not wanting to open source all their code. That makes this a legitimate conflict, Linux enforces all driver code must be open, and nVidia doesn't want to open their code. No one is at fault per-se, there are two solutions to the problem and neither party is interested in compromise. > You said "be done with it", which means no one will maintain it expecting it to be forever compatible? I don't know why you'd immediately jump to "forever". Nothing is forever. I just meant "a sufficiently long time". Like with Windows APIs, which still have a lot of compatibility with applications compiled 20 years ago.
- shmerl 8y ago> I'm giving nVidia the benefit of the doubt and assuming they have legitimate reasons for not wanting to open source all their code. They don't, because there is nouveau already and Nvidia are being rather nasty in preventing it from fully working. See: https://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-nvidia-linux-nouveau/998310-nouveau-persevered-in-2017-for-open-source-nvidia-but-2018-could-be-much-better?p=998316#post998316 https://www.phoronix.com/forums/forum/linux-graphics-x-org-d... > Like with Windows APIs, which still have a lot of compatibility with applications compiled 20 years ago. Try using Windows drivers from older Windows kernels with newer Windows. They won't work. So it's not anywhere close to 20 years.
- AnIdiotOnTheNet 8y agoTrue about drivers, but Windows drivers do work for much longer stretches of time than Linux drivers do simply because you don't have to recompile them for every minor change to the kernel. There's no reason Linux couldn't have stable ABIs for major kernel versions other than that they don't want to.
- shmerl 8y ago> Windows drivers do work for much longer stretches of time than Linux drivers do simply because you don't have to recompile them for every minor change to the kernel. So do Linux dkms drivers. Windows is just using "dkms" like approach for everything. But it doesn't have any advantage in compatibility time period. > There's no reason Linux couldn't have stable ABIs for major kernel versions Not sure what you are talking about. Linux does have such stable interfaces.
- AnIdiotOnTheNet 8y ago> Not sure what you are talking about. Linux does have such stable interfaces. Not sure what you're talking about either. I've never had to write a Linux driver, but it is a frequent complaint that one has to recompile drivers for new kernel versions. If the ABI was stable, that wouldn't be necessary.
- shmerl 8y ago> one has to recompile drivers for new kernel versions. dkms requires compilation, but it happens automatically with kernel upgrade. Read more about its design: * https://wiki.archlinux.org/index.php/Dynamic_Kernel_Module_Support https://wiki.archlinux.org/index.php/Dynamic_Kernel_Module_S... * https://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support https://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support * https://github.com/dell/dkms https://github.com/dell/dkms So not sure where you saw "frequent complaints", those are likely from people who have no clue what they are talking about.