Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

sfcrazy writes "It seems that recent comments made by Linus Torvalds have made the people at NVIDIA take Linux more seriously. Recently Nvidia employee Stephen Warren asked in the Kernel Summit mailing listwhat could be done differently to make Linux support better. 'In a Google+ comment, Linus noted that we have mainly been contributing patches for Tegra SoC infra-structure details. I'm curious what other areas people might expect me/NVIDIA to contribute to. I assume the issue is mainly the lack of open support for the graphics-related parts of our HW, but perhaps there's some expectation that we'd also start helping out some core area of the kernel too? Would that kind of thing help our image even if we didn't open up our HW?'"

If this engineer knows that will never happen (through no fault of his own, higher-ups would have decided this) then at least he's making an effort. People can get upset all they want, but nothing other than good is going to come out of this, whether it's exactly what would be ideal or not. Some help is better than none.

Better power management. KMS. More timely releases. Stop whinging that there are problems with Linux/Xorg/whatever preventing you from doing something and work with those up-streams to fix it. Stop making excuses, start releasing code. Extract the proprietry stuff to (a) smaller blob(s) and expose the trivial interconnects and such at the very least. Never say it can't be done: everything's possible. Etc.

Open up the hardware such that proper drivers can be written for any card (recent or not) and platform w/o the need of binary blobs.

That shouldn't be an impossible task given how much weight NVidia has towards third parties.

People keep spouting these things without actually taking into account that NVIDIA most likely has all sorts of contracts and license agreements they just can't break. Yes, it's fun to bash NVIDIA and try to paint them as some sort of a big, black demon worth all the hatred in the world, but in the end that doesn't actually *help* anyone, least of all F/OSS movement. Intel has the advantage in that that they entered the GPU-market a lot later than NVIDIA et.al., so they could avoid many of the mistakes their competitors did and they also have the whole, complete chain needed to produce and ship GPUs all by themselves and that really makes the comparison feel more like apples and oranges than anything directly comparable.

NVIDIA could possibly open up future hardware, but they'd still possibly have to then develop some areas completely from scratch in order to not run afoul of their previous engagements and such a move obviously would cost them huge amounts of time and money. And well, Linux-users simply ain't worth that. All this is to say that NVIDIA should open up as much as they can, that I agree with, but that it is also highly unlikely they could open it all up even if they wanted to.

"You seem to care more about NVIDIA's image than about what the Linux community actually needs."

Of course they do. Why in the world would this surprise you? It's a public, for-profit company. The vast majority of contributions to open source by companies are not done out of altruism. They're done out of self-interest.

"I truly don't understand what the big deal is. Just open up your damn specifications already."

There's probably something in how they do things that they think (rightly or wrongly) that gives them an advantage over their competition that either isn't patented or can't be patented (or maybe violates someone else's patents).

I agree, helping the nouveau project would be greatly beneficial. My post was mainly referring to the general attitude some hold that nothing is ever good enough, and while it is true that the driver state is rather poor, potential for improvement exists. Instead of attacking Nvidia for their efforts, people should actually help and show them where to direct their resources. No, it may not involve the release of all their specs, but they can help in other ways.

Yes, it's their own fault that they're hindering the progress of the community. But corporations are corporations - the way I see it, we're lucky they're offering help at all in response to it, even if only to save their image. Truthfully I haven't bought Nvidia in years, it's been AMD/ATI for me for the last decade. Just remember that our wallets are the most powerful tool we have.

All that's needed is for Nvidia to release the documentation on the components they manufacture, as AMD/ATI did in 2008 (and Intel has always done). The existing nouveau driver team will take it from there.

Yea, how well has that actually worked. Oh yea, it's failed miserably. 4 years later and ATI Linux drivers are still garbage and the only reason Intel drivers work is because of the server market and because chips don't change often. It's not rocket science, writing graphics drivers are HARD and Linus continually poking his pecker into the kernel means they continually break and have to be tinkered with to work again.

The VOIP visitation recorders at work have to have updates turned off because Ubuntu craps itself whenever it tries to update. When the box is 4 hours away that is a big deal. Our windows machines have auto-updates turned on and never have problems. We've tried having a development machine at the office to test the updates, but for whatever reason, the number of VOIP boxes and minor hardware revisions make it impossible to develop a standard update profile for us to reliably push out to all machines. So we have to just lock them down as much as we can and hope for the best. We are working on a Windows based solution so we can eliminate the Linux boxes in the future.

It needs to be repeated so it sinks in, Linux needs a reliable ABI so ATI and others can just slap a Linux driver onto the CD that comes with the card and call it a day.

Or would give away something about how their hardware, or hardware development works that they don't want anyone to know too much about. Or at least not to wave around in public. I'm sure AMD know, enough staff move back and forth, but some random chinese hardware maker, that I'd be worried about.

Remember nVIDIA sells it's 'first silicon' runs, they don't usually prototype, they do simulations first, and from the simulations that are used to design the hardware they go straight to manufacturing. It's possible some of their driver support would have some hooks (or parts) of their simulation tools in it that they don't really want to be broadcasting around.

But broadly ya, for whatever reason, if their higher ups don't want to be telling the world how their drivers work, and so they won't. Hell for all we know it could be entirely paranoia from an MBA type who just doesn't understand and doesn't want his ass fired if something goes wrong.

Years ago I got good support from Nvidia. I had a problem and sent
a bug report and got a response late on a Saturday night (West Coast)
that involved a kernel patch to fix a bug in the kernel that was
causing the problem. I was an Nvidia fanboy for many years after
that. I helped dozens of people get things like Twinview working.

In recent years, working with Nivida has been very frustrating
and I can no longer recommend them for Linux systems. For example
some interaction between closed-source Flash and the closed-source
Nvidia drivers turns people blue in Youtube videos but not other
sites.

There has also been a heart breaking struggle to remove video "tearing" (vsync
problem) when watching dvds and blurays. The last time I checked I needed to
use the GL video to remove tearing when watching dvds but I still have some
tearing when watching blurays which is kind of heart breaking. At the very
least Nvidia should have a sticky post in the Linux forum explaining all the
hoops one must jump through to try to get rid of video tearing. Also, having
the sticky posts show up on all pages, not just the first page is a big PITA.
It wastes my time and attention. It is disrepectful.

I don't understand why video tearing is such a recurring problem. Are
these environment variables still needed?

When an nvidia driver update causes tearing to start again, or worse,
if it causes X (or the entire machine) to crash, it feels like you
are telling me "F- you!"

I get it that opening up your drivers is not an option. The problem
is that this decision causes a lot of breakage and you do not make it easy
to fix this breakage. Please just make it easy for me to get your drivers
to work. Is Twinview plus non-tearing video playback really too much
to ask for? Also, what about the problem with non-tearing and composite?
Has that ever been fixed? If not, maybe that's something you could
help with.

Years ago I felt like I was getting support.
Nowadays I'm not feeling the love.

Move everything to userspace, and use an existing driver, or a very small open driver, to access the card. There should be no reason, even if they're crying "trade secrets" for this to happen. If nouveau can do it, and they're not crying trade secrets over it, then nvidia proper can do it too.

Let's say I'm trying to get to the bus station. You live in the area and so I ask you how to get to the bus station. You say, "I don't really want to tell you that." I get pissed off and complain loudly that even though you know the way to the bus station, you won't tell me. People start saying, "Boy, that guy's not friendly at all, is he?"

So in order to avoid the bad reputation you say, "Well, I still don't want to tell you where the bus station is, but what if I offered to cut your grass. Would that help matters?"

Of course I would love for you to cut my grass, but it isn't at all related to the issue of the bus station. It's not a middle ground, it's a red herring.

You seem to care more about NVIDIA's image than about what the Linux community actually needs.

I truly don't understand what the big deal is. Just open up your damn specifications already.

AMD did this, and the Linux community still recommends people buy NVIDIA cards. Vote with your wallet, or shut the fuck up. Keep buying from the company with closed specs instead of open ones, and you'll keep getting closed specs instead of open ones. Not a difficult concept, people.

If this engineer knows that will never happen (through no fault of his own, higher-ups would have decided this) then at least he's making an effort. People can get upset all they want, but nothing other than good is going to come out of this, whether it's exactly what would be ideal or not. Some help is better than none.

Right; I'm not getting upset about him. We love him and if he ever gets kicked out by NVIDIA, I'm sure there are lots of us here who will want to hear about it and offer him a job. What upsets us is that NVIDIA clearly has people who understand that we are upset and why we are upset and they still don't do anything. From my point of view this makes things even worse.

NVIDIA; please: even if it's incomplete and misses your latest fastest newest stuff, please provide the Linux developers; both kernel and Noveau; with publishable open documentation which tells them how to set up the rest of the features and at the very least provide good, reliable and colour tunable 2D and low level support for your cards. Preferably provide full, documented access to any feature older than two years.

This can have no possible bad influence on your competitive advantage and will go a long way to making those of us using Linux happier.

Truth is soon Intel hardware with the open source driver will be more powerful than the NVidia card with the open source driver.

There's also the problem (from nVidia's perspective) of commoditisation of the market. Most consumers don't want the fastest GPU, they want the cheapest GPU that's fast enough for their needs. As with CPUs, some people don't need the latest and greatest, and this percentage of the market grows over time. As the niche of people needing the high end cards shrinks, so does nVidia's R&D budget and their ability to stay on the leading edge. This is something nVidia should be intimately familiar with, as it was how they killed SGI...

> The pilot project was worth an initial 250-350 million dollars, with the potential of much more to follow.
People always say this, "more work to follow" but it hardly ever works out like that. The Chinese are notorious (as in *consistently and repeatedly*) ask for samples with the promise of more orders and they take it apart and reverse engineer it. They do this with electronics, shoes, ships, MiG and Sukhoi jets, missiles, commercial agricultural strains even Austrian towns. I'm not anti-Sino, just reporting what has been documented as happening and appears to be a sustained, systematic and government condoned effort to make unlicensed copies of technology (that is, 'steal'). Perhaps NVidia were aware of this, even if many Slashdotters are not.

I would think that the Nouveau project would prefer to keep nVidia people/developers out of the source - they cannot risk there being any "polution" of intellectual property.Lawyers should first classify what the company can divulge (and their answer: Nothing), before anyone from nVidia even thinks about looking at the Nouveau source.

Companies don't like giving away the goods for fear of losing competitive advantages. Companies that invest a lot in their goods as NVIDIA does are especially fearful of creating new competition. This isn't a competition is bad argument, it's a giving away your tech and enriching your competitors is bad argument. Also, NVIDIA doesn't have to open it up to Linux. Seriously, what will the Linux community do? Threaten to get behind another chipmaker? Maybe a full scale boycott of NVIDIA? NVIDIA doesn't get much benefit from the Linux community.

Except that was tried a long time ago, where NVidia said something like "SGI owns some of the stuff we use and they won't let us release it". Well, given specific goals, the FOSS people went to SGI and asked "Can NVidia release the stuff they got from you?" SGI answered "We cannot conceive of anything that NVidia has off us that we wouldn't be happy with them releasing.".

First, this is common... company A says "I cannot do X because I have an agreement with company B" and then some person allegedly from company B (but who may not be in a position to know, or who knows but just feels like lying) says "nah, we're not the bad guys here!". If you have not seen ALL contracts between the two companies, then you have no way of knowing the truth... however IF such an agreement exists, Nvidia will never breach it even if goaded into it by statements from the other vendor, because then the other vendor could sue them.

second, AFAIK Nvidia has never said that the ONLY reason for the closed nature of their stuff was one agreement with SGI. In fact, I once worked at a company then got into talks with Nvidia and we attempted to negotiate for certain info and I was told (this is third-hand info) that our people were told that Nviida could not release what we wanted even under NDA because they had contracts with multiple IP owners. I have no Idea of how true that is other than that I trusted the person I heard it from at the time... but my point is that nobody other than Nvidia and anybody they have inked deals with truly KNOW what is involved. One thing is certainly true however: Nvidia gains no sales by holding the info private and loses sales by not opening it up, so the odds are that they truly are unable to open it up and no public statements by anybody else will change that. In fact, Nvidia may well be contractually forbidden to even publicly divulge the identity and/or existence of some contracts and partners.

The real problem here, however, is NOT Nvidia...

Nvidia makes hardware. The hardware has a hardware interface (but not an "API" as some mistakenly claim). The hardware must be compatible with the host PC, which has a clearly published hardware spec. Clearly Nvidia hardware interfaces well with the host machine because both sets of hardware conform properly to the hardware "binary/digital" spec.

Nvidia makes a software driver. On Windows, there is an ABI spec that Nvidia can adhere to so their driver will play well with Windows. On Linux, things are either so poorly implemented that the driver interfaces are in constant flux and no ABI is possible, OR the architecture itself is so incomplete that no ABI has been completed, so Nvidia goes out of their way to make a driver wrapper that can be re-built at install time to adapt their solid and high-performance code and hardware to the unsettled platform. The simple solution is for Linux to finally mature to the point that it has a stable, well-documented ABI. Refusing to do this is immature/political not practical. The refusal to have a stable ABI is not just a pain re Nvidia, it is the reason why any minor update of linux can trigger a tidal wave of package updates and result in an unstable system. Adding another unstable pile of incomplete "open" code like nouveau does nothing to advance linux into a modern mature state... it's a not-work-around for a broken/missing ABI and all the anti-Nvidia FUD on earth will not make the nouveau driver fully-functional. With a proper ABI, old hardware could continue to be functional on future Linux releases even when a maintainer for the device's driver code cannot be found. Without a proper ABI, such hardware will inevitably be dropped as maintainers lose interest.