NVidia Releases Linux Drivers Supporting 4K Stacks
Supermathie writes "NVidia has finally released drivers for their chipsets and the 2.6 kernel that support 4K stacks. That means compatability with Fedora Core 2 kernels, people! View the README, visit their driver page, or download the package."
Wonder why this story was rejected when I mentioned it 4 days ago and then submitted the story.
Methinks the only real reason you'd want to keep your drivers closed off is because you're artificially handicapping your hardware to increase differentials between various (actually fairly identical) cards you've got on the market. Conspiratorial? Yes, but nothing that doesn't happen all the time.
I wholeheartedly agree that closed-source code is appropriate for all manner of enterprises (and philosophically, I tend to look at executable code as an open, gloriously inaccessible book anyway). But closed-source device drivers? Just makes me wonder what they're hiding.
Or go out and revise the nv drivers. Nothing (I would assume) prevents you from doing so. Nothing prevents you from getting a video card from another company. And by the same token, nothing should prevent NVidia from releasing closed-source drivers.
Besides, what would 99.9% of linux people do even if it was open source? Download source, not even look at it, type make install clean, and be done with it. (Or make setup or whatever the build sequence is; point being that most users wouldn't care.) And for the 0.1% of people who do mess with it, unless they discovered some great tweak that would provide a significant feature or speed advantage over the NVidia drivers, I'd just go with them, since I trust them more since the quality of their drivers partially determines their sales, and thus they have a bigger motivation to make them better.
Closed source software has its places,
But drivers is not one of them. Had they put the closed source code in a user mode library and used just a small open source kernel driver, we wouldn't have all the problems with the driver. It still wouldn't be optimal, but it would be way better than the current situation.
Do you care about the security of your wireless mouse?
As far as I remember, NVidia has maintained that some of the code in their drivers is licensed from a third party, and that the license does not permit source redistribution.
Several things:
1. There really isn't a way to verify that the drivers actually ship with the third-party code; NVidia may be using the issue to quelch requests for open drivers.
2. Goes to show how the license of the code you use in your projects can have determental impact on your future goals (or beneficial, depending on those goals, of course).
3. I think it's more likely that the drivers sources are kept closed because there's some benchmark tricks, or worse, cheats.
Actually, this is the idea. The interface with the kernel is open source; the closed source code is a binary object that gets linked into the module. Sorry, user mode doesn't really make much sense here, drivers need full hw access and context switching to a different privilege level would only hurt performance.
The rest is pretty much trolling, at this level. NVidia has been so far quite open source friendly when it comes to producing drivers. But I guess there will always be people to complain. Me, I'm happy NVidia has drivers for platforms where theirs is the only accelerated choice, like amd64. Others would say the same about IA64, or FreeBSD. Windows and Linux on x86 aren't the only games in town, you know.
Finally, how do you know they don't stand to lose something by making the drivers fully open source? look only at the whole 12 pipelines vs. 16 pipelines thing going on between the latest NV and ATI cards, with last minute info prompting new cards on both sides. If NVidia releases drivers for their last generation of cards that take the competition a couple of months to disassemble and analyze, they might keep the edge long enough to move on.
I must admit-I am a bit suprised that SLASHDOT didn't pick up on it. It might just be a little insignificant thing which doesn't warrant much attention anyway-who knows. Of course everyone is mentioning the support for 4k stacks. And of course this is important. Anyone who has used Andrew Morton's patch set knows what a PITA this issue was. But nvidia even did more than fix the single most blocking issue regarding their drivers and the 2.6.x kernels.
They also:
Added support for ACPI
Fixed problem that prevented 32-bit kernel driver from running on certain AMD64 CPUs.
Added support for GLSL (OpenGL Shading Language).
along with the new nvidia-settings utility-GPL'ed and written in GTK2....
and finally they added:
Added a new Xv adaptor on GeForce4 and GeForce FX which uses the 3D engine to do Xv PutImage requests.
Now I am not an expert on such things-25 years of experience and I am still left asking more questions than my ability to answer. _But I noticed this little innocuous "xv" thing and was like WOW-cool. I leave it up to those who know more to shoot me down-but doesn't this little "xv" thing mean that all those Linux users who use nvidia GeForce4 and FX cards suddenly got a a tremendous boost when doing much of anything with video ? After all XV is what all of the video players under Linux use for good quality full-screen video(mplayer, xine, totem, gxine, helixplayer etc.)
Now if I understand this correctly everytime a PutImage() request comes along under XV this is handed over to the 3D engine-automatically. It seems as if this would be a very, very significant reduction in CPU usage-particularly for older generation(PII/PIII) machines which happen to have fairly modern graphic cards. Full-screen divx under mplayer with the new drivers uses 12% CPU on average on my machine-I unfortunately did not do a benchmark to test this-but if my memory serves me correctly this is significantly less than what is was with the older drivers.
Now the downside to this-at least for the time being- is that some apps don't quite work with these new changes-Xine-and it's siblings(totem,gxine, kxine etc.)
But I assume these will be fixed pronto.
Well where am I going qoing with this train of thought:
Putting this kind of support for XV in the NVIDIA drivers -is really simple for the NVIDIA guys-perhaps even trivial-but it can mean a tremendous improvement for the users of these cards. NVIDIA has always treated Linux like a second class citizen-but hey who can complain-at least they acknowledge that Linux exists-compared to the BSD's Linux support is great-of course only if you are using x86 CPU's. Now everyone knows that the graphic workstation market has all but disappeared. But what if NVIDIA was to decide to simply really take advantage of the X11 windowing system and it's features.
Imagine if NVIDIA would actually provide good RENDER support-wow what a difference that would make for 2D desktop support-particularly under GNOME which uses RENDER extensively in VTE/PANGO-ie. why text scrolling in gnome-terminal is so abysmal. I am still stumped by the fact that the open-source X11 nvidia drivers support RENDEr far, far better than NVIDIA's own in-house drivers.....
Imagine if NVIDIA would really support the libfixes, libdamages and libcomposite extensions which are currently being developed at Xorg-X11. Sun's Looking Glass is already using libdamages and libfixes-I got it up and running on my machine yesterday-and yes it is still pre-alpha-but I have never, ever seen such a fluid desktop environment. This tech is almost *evil*- the promise which it presents is simply baffling-rendering all previous X11 windowing experiences to the days of the stone age. I don't really care that much about Looking Glass-if NVIDIA properly supports the X11 extensions we will have cairo-enabled desktops inside of the next year which will fundamentally alter the X11 experience for X users.
Ok. So here is the point of this little essay: If NVIDIA would simpl