Forgot your password?
Graphics Software The Almighty Buck Linux

Open nVidia Linux Driver Pledge Nearly Complete 221

Posted by kdawson
from the encouragement dept.
Ciarán Mooney writes to let us know that the Pledgebank drive to raise $10,000 for Project Nouvaeu is almost complete — at this moment it needs only 196 more people to sign up. Project Nouveau aims to provide open source 3D acceleration for nVidia cards. The drive was started by David Nielsen, whose blog explains what he hopes will happen.
This discussion has been archived. No new comments can be posted.

Open nVidia Linux Driver Pledge Nearly Complete

Comments Filter:
  • Huh? (Score:2, Insightful)

    by Otter (3800) on Tuesday January 09, 2007 @05:14PM (#17528902) Journal
    People can spend their money as they see fit, but giving $10,000, no strings attached, to a project whose only accomplishment (unless I'm missing something) is "Currently, nothing works" seems like an odd prioritization.

    For that matter, why bother with a "pledge drive"? If you think they need $10, why not just send them $10?

  • by mgemmons (972332) on Tuesday January 09, 2007 @05:17PM (#17529004) Homepage
    According to the pledgebank website,
    [...]leaving the many users of their videocards on popular UN*X systems such as Linux with only the option of using a 2d only driver or using nvidia' notorious proprietary driver.
    What is wrong with using nVidia's drivers for nVidia's cards? Is there some issue with the nVidia 3D driver implementation that would encourage an open-source reverse-engineering effort? What does "notorious proprietary" mean? I'm all for open-source, but this just seems to be OSFOSS (open-source for open-sources sake).
  • Great... (Score:3, Insightful)

    by Kalriath (849904) on Tuesday January 09, 2007 @05:19PM (#17529046)
    If a manufacturer refuses to help the Linux community by providing drivers, wouldn't it make more sense to simply, oh I don't know, boycott their products?

    Instead someone has the stupid idea to INCREASE nVidia's market share by getting a community nVidia gives the finger to to buy their products.

    Way to encourage companies to support the open source movement... it's basically saying "don't bother writing drivers for Linux, we'll do it at OUR expense!"

    Lunacy of epic proportions.
  • Re:Huh? (Score:5, Insightful)

    by eln (21727) on Tuesday January 09, 2007 @05:29PM (#17529266) Homepage
    His blog entry says it's basically a $10,000 "thank you" for taking on the project. Seriously, what? I'm giving someone a big pile of cash to thank them for taking on a project, even when they haven't made any meaningful progress toward completion of that project?

    I hereby announce I will take on the project of solving world hunger. Please give me a giant no-strings-attached donation as a "thank you" for my initiative. I will then make very little progress toward my goal before finally abandoning it as too difficult.
  • by drinkypoo (153816) <> on Tuesday January 09, 2007 @05:30PM (#17529300) Homepage Journal
    With new technology like AIGLX, XGL and XEGL emerging, having open source drivers for 3d cards is very important.

    While I agree with this statement, I think this project is the wrong way to go about it, simply because we do finally have a vendor who has committed to open source driver support: Intel []. Now, I will grant you that their cards are slow and crappy but they should be up to the task of accelerating the linux desktop. Also, the current release supports [] only an integrated video chipset and some older cards... but voting with your dollars is an absolute necessity. For any non-gamer, it should be a sufficiently powerful graphics system, and the G965 Express Chipset supports Core 2 Duo and Pentium D, so you can combine it with very good CPU power. If I were building a system today (aka if I could afford to build a system today) this is the combination I would elect to use.

    But most importantly, we need to monetarily support vendors who give us working hardware with working linux drivers, or even vendors who simply give us enough information to write drivers. This is not ATI or nVidia. This apparently is intel. They're also just about the only vendor providing any useful wifi drivers.

    If we actually spend money to sponsor driver development this will be a clear message to all graphics card manufacturers that we will put up with their bad behavior.

  • by Bent Mind (853241) on Tuesday January 09, 2007 @05:51PM (#17529800)
    What is wrong with using nVidia's drivers for nVidia's cards?

    Just a few things off the top of my head...

    nVidia has dropped support for cards older than the GForce4. I have a GForce2 with 64MB and TV tuner that would benefit from this driver.

    A while back I was running Hardened Gentoo. When I asked the maintainer why the nVidia driver was masked (blocked), he replied:

    ... One of the very reasons for using hardened is for increased security protections. The way nvidia wrote the drivers is really crappy as does run time execution. That means it behaves exactly as shellcode does, which is the very thing we are trying to prevent in the first place. Now when that glx ( gets installed every single package it that links to it then causes a PaX violation.

    I suggest you email the nvidia vendor and request that they stop taking shortcuts in the driver code and release something that's
    1) PIC proper [no TEXTREL's]
    2) stop using JIT.

    Several projects have worked to create versions of xorg or window managers that take advantage of 3D hardware. However, xorg relies on nVidia's driver (with nVidia hardware) for 3D. That code can't be modified.

    Finally, my understanding is that the nVidia driver only works with x86 hardware. All of my hardware is x86, so I've never verified this.
  • by kosmosik (654958) <konrad&kosmosik,net> on Tuesday January 09, 2007 @06:04PM (#17530082) Homepage
    > What is wrong with using nVidia's drivers for nVidia's cards?

    F.e. they taint the kernel - if things crash (one of my nvidia cards *did* with some Linux kernel version and their binary blobs) you cannot debug and fix it. Hell kernel developers will tell you to go on /dev/tree since they will not waste time on debuging some closed code with their kernel.

    Like it or not this is how Linux philosophy and developement looks - we have (and don't want to) no stable kernel ABI and expect everything (at very least the kernel-space stuff) to be open source. If you don't like it go use like FreeBSD or something.

    > Is there some issue with the nVidia 3D driver implementation
    > that would encourage an open-source reverse-engineering effort?

    Yeah, they are closed, they tie you to one architecture (where are nvidia drivers for PPC?), they break with vesafb and so on. They just limit your freedom. You can imagine situation where you have old nvidia card model FOO but it works for you. Now nvidia decides to cease support for this model in their newest drivers. As kernel developement goes on you will find yourself that newest nvidia binary modules do not support your (perfectly working for you) hardware and the old drivers do not work with new Linux kernels - this limits your freedom in some way.

    I would be very happy to use open source drivers for nvidia cards. Imagine just installing a Linux distro and graphics just work out-of-the box.

    I *do* think nvidia is quite Linux/OpenSource friendly (but actually I run Intel since it works better for me - no hassle - Just Works) but I think at some point they just will have to release specs of hardware or even better open implementation of their drivers - they will be forced to do so by competition.
  • by MoralHazard (447833) on Tuesday January 09, 2007 @06:11PM (#17530210)
    if it's not worth $10k to nVidia to open up the source code themselvs, then why should it be that the software shouldn't be worth more than that to develop?

    You misunderstand why NVidia refuses to open their driver code. They're not just being dicks, and they probably aren't too scared to expose their own proprietary technologies, because there ARE benefits to gaining the acceptance of the OSS community that translate directly into more profit.

    The real problem is that NVidia didn't write all of the driver code itself, from scratch. They incorporated copyrighted code licensed from other companies, probably some derivative and some word-for-word. They probably use patented algorithms and technologies, too. Several other companies hold rights over the NVidia source code, in such a way that NVidia can't just release it and contribute it to the Linux kernel without violating its own agreements, or exposing the Linux kernel to litigation.

    (I really wish I had a quote about this, I cannot for the life of me remember where I read it, but I *believe* that an NVidia exec stated as much in a press conference or release. So unless you do your own research, take me with a grain of salt.)

    there's likely to be an inquiry by nVidia, to ensure that it was not inappropriated from them

    I find this highly unlikely. Unless one of the companies holding licenses over NVidia's head assumes that they contributed under the table to the OSS effort, there are no grounds whatsover to assume that code was "inappropriated" (sic). NVidia itself has no interest in preventing the release of an OSS driver--if anything, it will help sell me hardware and drive their market share upward as they become the "OSS-friendly" graphics card company. (That's worth a lot of fanboy forum toadying.)

    NVidia probably could develop a fresh OSS driver for release into the Linux kernel, via the 'clean-room' approach. It would have to hire developers to do it, provide them with enough specs/code to get the job done but NOT provide them with the licensed code or algorithms, and sit back and watch the payroll fly out the door. This would probably cost them a lot more than $10,000, given the complexity of modern GPUs and the relative rarity of the software skills to do this kind of work. But if someone else wants to do it for free, all they'd have to do is stay the hell away and cross their fingers.
  • by drinkypoo (153816) <> on Tuesday January 09, 2007 @06:18PM (#17530370) Homepage Journal
    Why? How does your spending money to write open source drivers affect nVidia one bit? Why should it even be on their radar?

    This shouldn't be that hard to figure out - apparently even the moderators got it this time. See, corporations only feel hits to the wallet. Most of their feedback comes from sales figures, and if they get less love than their competitor (or simply less love than they expect) they hurt, they know something is wrong. Unfortunately, they don't necessarily know why.

    However, if ATI or nVidia should lose some market share, they will certainly know that it is not because of their lack of linux support, simply because the OSS community is willing to do the work itself. The proof of this principle is that people are willing to spend money to have someone else do their job for them. Simply buying their products is bad enough, but spending MORE money to support them (they benefit from a driver because it can increase sales) is a clear statement that they don't need to develop open source graphics drivers.

    If you really think that this is not on their radar, you are incredibly naive. Linux is the fastest-growing segment in computing, Linux is the only operating system gaining market share in the server space, and Linux is probably the only platform gaining any significant ground in education. Linux will only become more important with time, and Windows less. The change shows every sign of being extremely slow, but that doesn't mean that it's not occurring.

    Finally, if it were so unimportant as to not even be on their radar, they wouldn't even have developed their own Linux drivers, closed and crappy as they may be. (Well, nVidia's work pretty well... too bad about ATI.)

  • Not so much (Score:5, Insightful)

    by Sycraft-fu (314770) on Tuesday January 09, 2007 @06:26PM (#17530550)
    Often technologies will have in the license agreement "You can't release this code." You aren't required to like it, but if you sign the contract (and this stuff involves real, paper, signed contracts) you are required to respect it. nVidia and ATi both license a good deal of things for their drivers (S3TC would be an example). They can't just give the finger to these people and do what they want, they'll get sued and they'll lose because there's a contract in place.
  • by zcat_NZ (267672) <> on Tuesday January 09, 2007 @07:52PM (#17531950) Homepage
    "isn't patent licensing part of the reason nVidia and Ati won't release fully OSS drivers?"

    One of the possible issues is _lack_ of patent licensing. Nobody really knows what trivial and obvious techniques have been patented by some patent-troll, but as long as the patent troll can't prove nvidia are doing something the troll's patent potentially covers, they have no reason to sue or shake nvidia down for license fees. Open source drivers would feed the trolls.

  • by ReachingFarr (758675) on Tuesday January 09, 2007 @08:10PM (#17532248)
    There is also the possibility that nVidia has licensed some patents for their hardware/drivers and they don't actually have the right to disclose some of the code. If they got patent X from some company, which they incorporate into their binary driver, they couldn't open source their driver without removing that piece of code first. Now this wouldn't be a big deal if we are talking about a single function or a few lines of code, but if, for some reason, they have a lot of licensed code they would have to remove it all and we would be left with a very incomplete OSS project.
  • by sbaker (47485) * on Tuesday January 09, 2007 @08:17PM (#17532316) Homepage
    nVidia have been very open about the reasons why they can't OpenSource their code - I think we have to take that as a true statement. It's not going to happen - period.

    Can we clone their drivers? Maybe - but it could take years to do that - and no sooner we succeed then we'll discover that there have been four generations of new hardware since we started - and the hardware we can support will be so far behind that very few people will want to use it.

    You *might* be able to do this for a relatively simple peripheral like a WiFi card - but graphics chips are probably the most complex (and least standardized) single chip device in existance. The driver has to contain a full-up compiler for the OpenGL shader language for chrissakes! (And no, you can't use an existing compiler or translate to some other language because this is a language that supports 4-way parallel arithmetic and has the bizarrest optimisation requirements imaginable!)

    This is a massive undertaking. $10,000 doesn't even scratch the surface of the work involved. I seriously doubt that a cash injection of a million dollars would get you a working, useful driver within a couple of years...let alone maintaining it and continually reverse-engineering the next generation of hardware.

    Your driver would probably (by necessity) infringe on a bunch of patents too.

    Whilst I'd REALLY like the peace of mind of knowing that there is a working, efficient and up-to-date-with-modern-hardware OpenSourced driver out there - it's *so* not going to happen. We need to find clean ways to wall off the nVidia driver so that it can function without being a security loophole and so it can survive kernel changes and such.
  • by frogstar_robot (926792) <> on Tuesday January 09, 2007 @08:21PM (#17532380)
    I'd rather have closed drivers that work for these devices under Linux than some crappy open source drivers.

    What is wrong with that?

    1. nVidia can change their minds about Linux support at any time.
    2. People may want the hardware to be usable on other arches than i86.
    3. It'd be nice to be able to distribute a complete working nVidia Linux system legally.

    What is wrong with any of that?
  • Re:Excuse me. (Score:3, Insightful)

    by mungtor (306258) on Tuesday January 09, 2007 @09:27PM (#17533202)
    Intel has nothing to lose by open sourcing their drivers because their cards suck. They have no interesting technology in that area and really can only gain some market share among linux users.

    nVidia and ATI drive the entire graphics card market with their competition and neither wants to give away any info by open sourcing a driver to the very small number of people who even care. Even if you had full 3D accelleration on Linux, there are hardly any games to take advantage of it.

    And breaking the supplier agreements is a big deal. Most people here get all bent out of shape when somebody accidentally violates (in their opinion) some obscure and poorly worded clause in the GPL. A license is a license. Either respect all of them or none of them, not just the ones that give you the things you want for free.
  • by Anonymous Coward on Tuesday January 09, 2007 @09:38PM (#17533318)
    Then run it in VESA mode. That will work with anything. Oh, you don't get super-acceleration? Well, save your pennies for a month and get a card made this century.

    Your response is the classic reason why we need open-source drivers ... so that we don't have to buy the latest cards when the old hardware still works perfectly well.
  • by Builder (103701) on Wednesday January 10, 2007 @07:43AM (#17537394)
    Ya think? Pity the kernel developers don't.

    Beyond just allowing for better drivers, this would allow other ISVs who write software that interacts with the kernel to better support Linux and thus grow the Linux ecosystem. But making developers lives easier and more fun was apparently more important.

    I've been ranting and railing about the stable API / ABI issue since the new development process was announced. I now have to wait for my distro to stabilise / patch 'their' kernel six ways from Sunday. Even today if you look at the differences between the SLES and RHEL kernels, they are significant, and they are only going to diverge further.

    The new kernel development model encourages, nay, demands fragmentation. Welcome to the Unix wars part deux :(

The first version always gets thrown away.