If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

NVIDIA Wants To Be A Better Linux Patron

Phoronix: NVIDIA Wants To Be A Better Linux Patron

It's been an interesting week for NVIDIA with Torvalds speaking quite negatively of NVIDIA, NVIDIA PR's fluffy response, and their recent loss of a huge order due to not having an open-source driver / MIPS port. However, NVIDIA Linux engineers are hoping to be better Linux patrons...

NVIDIA Doesn't Want To Be A Better Linux Patron

Stephen Warren of NVIDIA wants to be a better linux patron.

Huge difference.

This is made clear by the article itself:

NVIDIA's Linux engineers have even bought graphics cards themselves to send over for Linux reviews at Phoronix. NVIDIA PR has had no interest in seeing Linux reviews on their products, etc. They've just played games with me for years and never delivered.

Stephen Warren needs to make a mockup pink slip and send it to NVIDIA PR, if he wants things to change.

Stephen, thanks for making the attempt(and you too, unnamed engineers within NVIDIA. We love you too). We recognize and appreciate it. But you aren't the problem, those above you are not interested. They are the problem. The first step in solving any problem is properly identifying what the root cause actually is.

Deprecate as many parts of the proprietary driver as possible

Having said what I said earlier, I do have an answer to the Stephen's query.

It is my understanding(and I hope others around here will clarify this) that the proprietary Nvidia driver is not just the driver itself. The proprietary driver actually replaces parts of xorg and it's graphics stack, and other portions of software that clearly isn't necessarily covered under super secret hardware specifications.

I do not mean deprecate all of these parts at once.

Contribute to xorg whatever features are hidden within the proprietary stack, and when the co-responding OSS software package is capable of doing what the proprietary driver replaces, deprecate it's "replacement" that exists within the proprietary stack and make the proprietary driver more friendly with OSS components.

Move on to the next re-written software item. Rinse and repeat. Contribute to whatever the OSS software package is, when the OSS software item is fully capable according to Nvidia's standards, deprecate the next part of the proprietary stack.

The Nvidia driver should be made as small as possible, and designed to cover as little as possible.(hardware only, in other words) Leave the rest up to us.

We have good software out here in OSS. Nvidia should stop re-inventing our wheel, and just patch the tire instead.

There is a few "major" ways they can improve linux support without opening up the hardware.

Provide Hardware to Linux Review sites ( like phoronix).

Provide Hardware to Open Source Driver Developers.

At least provide some Partial opening up of the hardware on "critical" information for Open Source Developers. This information for example could be on the power management systems. After all, the Power management system would be critical in a sense that an improper setting could cause the video cards in mass to die due to overheating because of the driver having an incorrect combination of voltages, gpu frequency, and graphics card fan settings.

Rework the driver to play nicely with other OpenGL Drivers. It's extremely annoying to be unable to test multiple graphics cards from different vendors because the binary blobs fight with eachother, and any other driver. This probably would be the hardest to fix, but It's possible to get a system setup to where the OpenGL Drivers do not constantly fight. After all, it'd be nice to be able to not haft to go through a lot of undocumented hassles to be able to build a system where there is three graphics cards. For example, For testing purposes one might have a Radeon HD4550 ( open source driver), a Radeon HD5650 ( Open source driver), and then a random nvidia card like a gtx600 series to test with.

Re

Linux users are pretty satisfied with what the proprietary drivers offer.

A Linux user is mostly unsatisfied that Optimus is not supported on Linux.Developers are mostly unsatisfied that they have to reverse engineer the proprietary drivers in order to get something working in the open source drivers and that nVidia developers don't help to improve the open source drivers like the AMD developers do for AMD open source drivers.

Would you open a GPLv3 driver?

Would you release the driver under the GPLv3?

First off, I am not a lawyer nor even a law student!
This would let you release patents knowing if your competitors use them, you would get their patents back for your use in GPLv3 software.
The biggest issue with this is that Mesa/Linux aren't under the GPLv3, so yea.. However I am curious how your management would feel about this trade off.

At least recommend nouveau over Vesa / Commit "enablement" patches for Nouveau instead of Vesa
I believe you currently recommend people to boot with Vesa and then install the proprietary driver. Change that to Nouveau. Help nouveau developers get new hardware to at least display on release day, so that means you'd have to contribute patches ahead of time.

Re

There is a few "major" ways they can improve linux support without opening up the hardware.

Provide Hardware to Linux Review sites ( like phoronix).

Provide Hardware to Open Source Driver Developers.

At least provide some Partial opening up of the hardware on "critical" information for Open Source Developers. This information for example could be on the power management systems. After all, the Power management system would be critical in a sense that an improper setting could cause the video cards in mass to die due to overheating because of the driver having an incorrect combination of voltages, gpu frequency, and graphics card fan settings.

Rework the driver to play nicely with other OpenGL Drivers. It's extremely annoying to be unable to test multiple graphics cards from different vendors because the binary blobs fight with eachother, and any other driver. This probably would be the hardest to fix, but It's possible to get a system setup to where the OpenGL Drivers do not constantly fight. After all, it'd be nice to be able to not haft to go through a lot of undocumented hassles to be able to build a system where there is three graphics cards. For example, For testing purposes one might have a Radeon HD4550 ( open source driver), a Radeon HD5650 ( Open source driver), and then a random nvidia card like a gtx600 series to test with.

Lol, buying stuff for review sites doesn't in any way help the Linux community or the Linux user.