To persuade nVidia's directors or board leaders that open source is good for them is it will teach new techniques how to code that in house developers are not aware of. Also the in house developers can share their programming techniques to the open source community. Of course people said that nVidia should participate with the open source projects and give out documentation of their hardware. I do not think nVidia will ever will provide documentation of their hardware because their hardware is probably controller-less. This means their GPU requires a middle-man to handle the conversion and controlling of the GPU. What can nVidia do is nVidia developers can help with graphics API in the kernel and Xorg with out compromising the secrets of their hardware. Probably if they do, Optimus does not have to be handled by a third-party project, but use a certain instruction in the kernel that a nVidia developer has a eye on to support Optimus themselves. To use that instruction in the kernel, nVidia needs to build up seniority and this means they have to participate in the open source community. Only seniority will let kernel developers respect nVidia. Supporting graphic cards through closed source or "binary blob" drivers for several years does not relate to the open source community has seniority. Lately AMD has got seniority by providing information about their hardware, so open source community respects AMD.
CUDA and OpenCL is kinda frightening because it has once used to run malicious software, so this is another reason to keep that type of API open source. One thing that open source community has an excellence is hunting and hacking source code to minimize malicious attacks. This should be the most critical for persuading nVidia's directors or board leaders to open source their CUDA and OpenCL projects.
Linus Travolds does not like the late changes in the graphics API of the kernel. The graphics is just getting bigger and this takes time to add changes. Travolds just bitches about the graphics API of the kernel, so he bitches to nVidia more than other projects. I doubt it because of nVidia making closed source drivers. nVidia does follow kernel patches and updates their drivers to be compatible with those kernel patches. Though they just do not add changes fast enough for people that wants to be on the bleeding edge of kernel patches.
One thing that is correct is Linus Travolds does not give a reason why he gives F's to nVidia. IMHO, nVidia is actually on the ball making a more complete drivers compared to any open source drivers that are not complete, so this probably makes Linus Travolds jealous. There are a lot of drivers in the kernel that are still not done after ages of development compared to their Windows drivers.
If we don't scare them they won't learn, they will be lazy and they will simply won't care. We have to force them to act and make a choice. Otherwise it simply won't happen, unless they start losing a lot more money. But we shouldn't depend on this. We need to force them to make a choice and act.
I know it's not nice, but they aren't being nice either. So what do you guys think? Let's not miss this precious opportunity.
I know you might say "But if they stop supporting Linux altogether?" -- remember that sometimes tough choices and sacrifices like this have to be made.
Last edited by asdx; 06-26-2012 at 09:40 PM.
People cannot reasonably ask for code, but they can quite reasonably ask for programming specifications. I believe this question needs to be asked of nVida repeatedly, until they are absolutely sick of hearing it.nVidia cannot "open source" their source code for their driver blob because they don't own rights to a good deal of it. That simply canot happen, forget it.
However, what nVidia CAN can feasibly do, but for some reason they don't, is release programming specifications, such as AMD/ATI have done.
This documentation doesn't expose any nVidia IP, nor does it expose any third party's IP that is in nVidias binary blob driver. It merely is documentation on how a driver may be written to interface to the GPU hardware. In the linked documents it is for AMD/ATI hardware, what is wanted is the equivalent documentation for nVidia GPUs.
Releasing this documentation would make it feasible to use nVidia GPUs for Linux machines. Whilst Linux machines don't have significant market share on the desktop, they dominate in every other market, and a lot of those machines do have graphical UI and video requirements. Failure of nVidia to release programming specifications for its GPUs is eventually going to hand over this huge market to Intel and AMD/ATI.
Why? Why don't nVidia release the programming specifications? Releasing them would eliminate all the negative PR, it would enable access to a huge market, it would cost next to nothing, and it would not divulge any nVidia IP or third party IP.
So why not? What is there to lose nVidia?
Why not release programming specifications? How does it hurt you? Since there is no IP involved, why not? What is there to lose nVidia?
Bullshit PR responses won't cut it, we need an explicit answer.
If their answer is "because we promised other proprietary vendors that we wouldn't release programming specifications" then the Linux community has its answer. nVidia and Linux together are not feasible. Oil and water. Use only Intel or ATI.
Then it would be appropriate to tell Nvidia: "Fuck off. Get your shitty blob out of our system, provide specs or GTFO."
Since Linus Torvalds has no doubt already been involved in discussions with nvidia, and no doubt has already asked this question directly to nvidia management, then sice Linus' reaction is clear, I think we already can read between the lines here, and we already do in fact know the answer to this question.
Last edited by hal2k1; 06-26-2012 at 10:28 PM.
They are probably thinking that we are idiots making a free OS for them to make money on it, while they can get away without giving us nothing but pain in return, and I don't think we are going to accep this? Are we? I'm not going to.
Linus Torvalds giving them the finger has indeed damaged Nvidia PR forever, and I appreciate what he did, I also think this was one of the reasons Nvidia lost so much money recently.
But Nvidia PR response is nothing to me, it's not an answer to my eyes. It's bullshit, and we all know that.
How many more chances are we going to give them? How much are we going to wait for a real answer of them?
We can get them out of the door, the question is when? I'm starting to lose my patience with their PR bullshit responses or indiference.
They obviously don't take us seriously and don't respect us, and they are not going to until they know we can hurt them for real. e.g. breaking or banning their blob from the system without not going back unless the specifications way. Is it even technically or legally possible to do this? What are the ways? Changing ABI/API, Wayland, secure boot, code signing, changing license? How can they get away? What are the possibles workarounds they can use against us?
We need to give them an ultimatum, Linus Torvalds fingering them is pretty good and has damaged their image, one of the reasons they lost money, but we need to move up to the next level and really scare them. Until they don't feel enough fear or pain they won't learn, and nothing will happen.
Begging and repeating them that we want the specs doesn't work, we have been asking them since forever and nothing changed. Being pacifist about it doesn't work either. We need to give them a final ultimatum and force them to act, or kick them out, there's not another way. It's going to require balls like the ones Linus Torvalds had in that video/image, but we can do it.
If your car won't burn and explode you won't get out of your car to save your life. This is what we need to make Nvidia feel. We need to give them fear for once to make them respect us. They have shown us there's no another way with their PR bullshit response.
How many more chances are we giving them? sigh
Last edited by asdx; 06-26-2012 at 11:43 PM.
It's simple: They want to stay? Give us the specs. They don't want to give us the specs? We show them where the door is and kick them out (we ban their blob, make it unloadable with all kernels, make it uncompilable).
There's no other way with those parasites.
Last edited by asdx; 06-27-2012 at 12:05 AM.
And I would say that change in this case will be painful but immediate because Nvidia won't stand that their "3d studios or film clients" won't be able to use Linux with future distros. So they will have to comply with Linux development rules. They will have to do what they're not doing todaay: provide specifications.
Not being able to load blobs in the future will only make users angry and it will be very painful for them, but they will go and complain to Nvidia, thus giving them lots of pressure, and that's exactly what nvidia fears the most, unhappy users. People will simply stop buying Nvidia and choose AMD. So this is the lethal weapon for them to change. Nvidia losing more money, pressure to Nvidia, unhappy users, they will have to do something this time.
Seriously, what else do you suggest? Do you think Nvidia will change their behaviour if we all sit here, complain, pray that Nvidia will change or become more Linux friendly, or say "Fuck you nvidia" all the time? Call me crazy, hate me and all that you want, but this is the only way Nvidia will change their behaviour, if we hurt them enough.
Sure, the blob has great 3D support and gamers are happy with it, but what about the people that aren't gamers and don't want the blob, people who want open source, Wayland, proper XRandR support, KMS, stability, great suspend/resume, better 2D support. What about the people that want to ensure continuous Linux development without the blob getting in the way of developers and hindering development?
There are people that respect developers and/or have developed and debugged the kernel with blobs and know how much of a PITA it is to have to deal with blobs when debugging the kernel, and don't want to have the blob around anymore. We want to also ensure countinous and further development of Linux, the kernel, Wayland and other projects and blobs actually hinder development of those projects.
So are you telling me that we have to give up with all this just because of some gamers whims? Are you telling me we have to risk YEARS of work of Linux development and progress, or we have to risk progress like Wayland because of some gamers whims? Seriously? What the fuck.
I'd rather break the blob and make Nvidia react. I'd rather give nvidia a hard time. Because nothing else will. They think "Linux has 1% of marketshare so why should we bother in giving away our IP?". They simply won't bother to do what we want if we simply cry out and express our pain here. They will change when THEY are in pain and when their users are suffering. Then they WILL HAVE TO change the way they do business, because nothing else will. They DON'T HAVE TO right now.
Unhappy developers are bad for you and everyone too, it means lack of progress, not good software anymore. It means slow development.
So please understand that sometimes though choices and sacrifices have to be made when nothing else will work. And specially when the future of something as important as Linux is at risk.
Last edited by asdx; 06-27-2012 at 01:53 AM.
This will cost them more money in the long run, I don't see every Linux/Ubuntu/Fedora/whatever-distro user having to downgrade their kernels for running the nvidia blob.
I think it would be far better and cheaper for Nvidia and everyone if they just released specifications so that Linux developers could write their own drivers. Is this really too much to ask?
Last edited by asdx; 06-27-2012 at 02:39 AM.