Forgot your password?
typodupeerror
Graphics Open Source Linux Hardware

Nvidia Engineer Asks How the Company Can Improve Linux Support 581

Posted by timothy
from the increase-its-sleep-number dept.
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 list what 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?'"
This discussion has been archived. No new comments can be posted.

Nvidia Engineer Asks How the Company Can Improve Linux Support

Comments Filter:
  • by intellitech (1912116) * on Saturday June 23, 2012 @11:22PM (#40425895)

    [...] 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?

    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.

  • by sethstorm (512897) on Saturday June 23, 2012 @11:24PM (#40425911) Homepage

    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.

  • by ethan961 (1895082) on Saturday June 23, 2012 @11:28PM (#40425929)
    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.
  • Optimus (Score:5, Insightful)

    by jaminJay (1198469) on Saturday June 23, 2012 @11:43PM (#40426043) Homepage
    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.
  • he knows (Score:3, Insightful)

    by phantomfive (622387) on Saturday June 23, 2012 @11:47PM (#40426069) Journal

    . I assume the issue is mainly the lack of open support for the graphics-related parts of our HW,

    He knows exactly what people want. The entire point of the question is to make it look like they are doing something without actually doing something.

  • by lister king of smeg (2481612) on Saturday June 23, 2012 @11:56PM (#40426105)

    not if they plan on complying with the gpl

  • 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.

  • by SwashbucklingCowboy (727629) on Sunday June 24, 2012 @12:01AM (#40426143)

    "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).

  • by ethan961 (1895082) on Sunday June 24, 2012 @12:06AM (#40426179)
    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.
  • by symbolset (646467) * on Sunday June 24, 2012 @12:08AM (#40426185) Journal
    Not really. What is needed is hardware that can be documented. Nice of nVidia to confess they are "not it". Spares having to consider them.
  • I see why you're writing as an AC.

    because nothing prevents nVidia from collaborating

    Copyright, patent and contract laws quite likely do. Oh, but let's not let real-life facts bother us, eh? Ignorance is a bliss and all that.

  • Re:Of course (Score:4, Insightful)

    by ethan961 (1895082) on Sunday June 24, 2012 @12:21AM (#40426257)
    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.
  • by Crosshair84 (2598247) on Sunday June 24, 2012 @12:23AM (#40426273)

    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.

  • Re:he knows (Score:5, Insightful)

    by Luckyo (1726890) on Sunday June 24, 2012 @12:25AM (#40426281)

    He also knows that this is not going to happen, and is looking for a middle ground. Fanatical "open source or GTFO" movement isn't look pretty in this either.

  • by Sir_Sri (199544) on Sunday June 24, 2012 @12:29AM (#40426293)

    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.

  • by DrJimbo (594231) on Sunday June 24, 2012 @01:22AM (#40426553)

    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?

    export VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE="DFP-0"
    export __VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE="DFP-0"
    export GL_SYNC_TO_VBLANK=1
    export __GL_SYNC_TO_VBLANK=1
    export GL_SYNC_DISPLAY_DEVICE="DFP-0"
    export __GL_SYNC_DISPLAY_DEVICE="DFP-0"

    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.

  • by X0563511 (793323) on Sunday June 24, 2012 @01:51AM (#40426677) Homepage Journal

    We're asking for specs, not driver code. There's no reason they would have to give us any of those simulation hooks, or any information about them.

  • Eventually this policy is going to cost Nvidia in the pocket book, and they will either come around or sink into nothingness.

    And yet, our new deployment of thirty Linux-based image generators I just setup all have GeForce cards in them... Do we live in the same world?

    nVidia cards, with nVidia's binary blob driver, are the only way I can get any work done in Linux. That doesn't seem to be changing anytime soon, either.

    I wish it would. My home PC has a Radeon card... But the support under Linux just isn't there.

  • Re:LOL slashdot (Score:2, Insightful)

    by X0563511 (793323) on Sunday June 24, 2012 @01:54AM (#40426691) Homepage Journal

    News for nerds, random bullshit posts by anonymous assholes.

  • Re:he knows (Score:5, Insightful)

    by wrook (134116) on Sunday June 24, 2012 @01:55AM (#40426695) Homepage

    But it's not a middle ground. It's not related.

    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.

  • by kllrnohj (2626947) on Sunday June 24, 2012 @02:22AM (#40426835)

    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.

  • by kthreadd (1558445) on Sunday June 24, 2012 @02:44AM (#40426945)
    Sounds like the situation could improve if Linux exposed a more stable API toward drivers.
  • by rtfa-troll (1340807) on Sunday June 24, 2012 @03:08AM (#40427073)

    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.

  • by jejones (115979) on Sunday June 24, 2012 @03:09AM (#40427077) Journal

    From TFE (email): "Within the constraints I have, what should I and perhaps other NVIDIA employees be contributing to in the kernel?"

    I suspect those constraints essentially preclude what would really be useful, so what's the point?

  • by im_thatoneguy (819432) on Sunday June 24, 2012 @03:55AM (#40427245)

    And yet their open source drivers still are unusable...

    I don't give 2 shits about "Theoretically" working drivers. I need reliable, stable and fast drivers. The AMD Drivers are none of those things.

  • by TheRaven64 (641858) on Sunday June 24, 2012 @05:05AM (#40427483) Journal

    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...

  • by Anonymous Coward on Sunday June 24, 2012 @05:09AM (#40427495)

    I doubt anyone will even see this, but I think it's great that they took any interest at all.

    The owe our tiny market segment exactly nothing, but they're asking anyway. That's certainly something and it seems awfully nasty to get all "fuck you, it's all or nothing" about it.

    Just a thought.

  • by SplashMyBandit (1543257) on Sunday June 24, 2012 @05:16AM (#40427521)
    > 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.
  • by GNious (953874) on Sunday June 24, 2012 @05:42AM (#40427599)

    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.

  • by Tough Love (215404) on Sunday June 24, 2012 @05:45AM (#40427603)

    NVidia should open their register specs like AMD or else fuck themselves. I believe that is what Linus meant.

  • by Anonymous Coward on Sunday June 24, 2012 @06:50AM (#40427841)

    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.

  • by Deorus (811828) on Sunday June 24, 2012 @09:26AM (#40428541)

    Telling people which versions of Linux they can use the video cards with is equivalent to telling Windows users they all have to use Vista if they want to use NVidia hardware.

    Fortunately, Vista drivers work perfectly fine on Windows 7, making that a non-issue and demonstrating that Linux itself IS the actual problem. Thanks for the Windows reference!

  • Re:Of course (Score:4, Insightful)

    by JamesP (688957) on Sunday June 24, 2012 @09:27AM (#40428559)

    Oh please, it's firmware whining again

    Dear open source zealots, no one is obliged to add more circuits to a computer just because you can't be bothered to give the embedded card some data.

    ALL computers depends on some amount of closed source data, deal with it.

    There are exceptional cases, where the firmware is OSS, or where the vendor is a real asshole and forbids the blob to be distributed

    Absolutely. Dear manufacturers, if you complain about distribution of fw at the same time anyone can download your "windows driver" off your website, You Are An Asshole

  • by Anonymous Coward on Sunday June 24, 2012 @06:20PM (#40432539)

    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.

Our business in life is not to succeed but to continue to fail in high spirits. -- Robert Louis Stevenson

Working...