Slashdot Mirror


Alan Cox to NVIDIA: You Can't Use DMA-BUF

DMA-BUF is a recent kernel feature that allows multiple GPUs to quickly copy data into each others' framebuffers. A use case would be the NVIDIA Optimus that pairs a fast GPU with an Intel integrated GPU, where the NVIDIA GPU writes into the Intel framebuffer when it is active. But, NVIDIA won't be able to use this infrastructure because it's GPL. Alan Cox replied on LKML to a request from one of their engineers to mark the API non-GPL: "NAK. This needs at the very least the approval of all rights holders for the files concerned and all code exposed by this change. Also I'd note if you are trying to do this for the purpose of combining it with proprietary code then you are still in my view as a (and the view of many other) rights holder to the kernel likely to be in breach of the GPL requirements for a derivative work. You may consider that formal notification of my viewpoint. Your corporate legal team can explain to you why the fact you are now aware of my view is important to them." The rest of the thread is worth a read (a guy from RedHat agrees that this code is GPL and cannot become non-GPL without relicensing from a major subset of graphics system contributors). This has a ripple effect: it means that all of the ARM SoC GPU drivers can't use it either, and it may prevent any proprietary drivers for the proposed DRI version 3.

169 of 946 comments (clear)

  1. It would still become a derived work of the kernel by Anonymous Coward · · Score: 3, Informative

    And, as such, forbidden under copyright laws in, for example, the USA or EU.

    The only way to avoid that would be to write your own kernel to ACT like (at an ABI level) the Linux Kernel.

    If you do not like this, then please get in touch with your legislative branch and ask them to change the copyright laws.

  2. Re:And this is why by justforgetme · · Score: 4, Insightful

    If it leads to vendor GPU drivers being developed in the open then I'm in!

    Why were you upset again?

    --
    -- no sig today
  3. Re:And this is why by AuMatar · · Score: 4, Insightful

    No, this is why it's GOOD, and why many developers, myself included, will not work on non-GPL projects. Without the GPL, they would have taken this code and added it to their proprietary code bases and we'd never have seen future improvements of it. That's not a good thing, ever.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  4. Re:And this is why by Anonymous Coward · · Score: 4, Informative

    Its not an external API like google maps or what not, its an internal kernel interface that video drivers that are running inside the kernel would use.

  5. Re:And this is why by mSparks43 · · Score: 2

    APIs GPL only? Seriously guys, WHAT THE FUCK?

    No, they were asking to include the code - or some derivative of it in their proprietary driver.

    If they just wanted to interface the API there would be no need to mark it non-GPL.

  6. Re:And this is why by binarylarry · · Score: 2

    Nvidia are the bad guys here, not Alax Cox nor the GPL.

    But I'm torn because Nvidia is the only great solution for 3d on Linux right now. So my pragmatic self is screaming "NOOOOOOOOOOOOOOO!"

    Intel Ivy Bridge stuff is pretty awesome though, I use it more than the dedicated Nvidia gpu on my Clevo. I'm really hoping the next iteration of Intel GPUs makes dedicated support obsolete but it's just a dream ;).

    --
    Mod me down, my New Earth Global Warmingist friends!
  7. How to (not) get people to use your OS... by quasius · · Score: 3, Insightful

    Well, I guess that's yet another way to make sure Linux stays niche in desktop use forever.

    1. Re:How to (not) get people to use your OS... by ArsonSmith · · Score: 3, Interesting

      Desktop will soon be a niche that will mostly be Linux users that want it. The Year of the "Linux Desktop" will not be due to Linux's gains in popularity of that particular realm, but the reduction of desktop use by those not using Linux.

      --
      Paying taxes to buy civilization is like paying a hooker to buy love.
    2. Re:How to (not) get people to use your OS... by bug1 · · Score: 4, Insightful

      It was in a niche in 1991 when it was released, now its used in probably a billion devices around the globe, tv, media players, phones, and yes Desktops.

      And you think that the Linux Kernel people, standing up for their Legal RIGHTS against a bullyboy corporation that uses IP as a tool of oppression is bad, and will hold back Linux.

      What do you think Software Freedom is all about, serving the mighty corporation ?

    3. Re:How to (not) get people to use your OS... by schnell · · Score: 2, Insightful

      now [Linux is] used in probably a billion devices around the globe ... phones

      I hope you aren't talking about Android here. Android should no more count towards "Linux" marketshare than OS X should count towards "BSD Unix" marketshare. It's in there all right, but all the parts that make it what people want to use are put on top by somebody else.

      --
      "95% of all Slashdot .sig quotes are incorrect or completely fabricated." -Benjamin Franklin
    4. Re:How to (not) get people to use your OS... by anomaly256 · · Score: 4, Informative

      OS X's kernel is Mach, not BSD. It's had BSD api and userland tacked on to it but it's actually Mach. It's so altered though that it doesn't really count as either but instead something new and on it's own. Android at it's core is still a linux kernel and not some mutant derivative but actual linux with linux API driving the OS services that drive the jvm that drive the apps you know.

  8. Honest Question by Anonymous Coward · · Score: 5, Interesting

    As AC since I'm sure this will garner much hate, but this is honest speculation with the intent of stoking real discussion:

    1. NVIDIA and Intel want to use a new whiz-bang feature in the Linux kernel to bring faster and more feature-rich graphics to Linux. This is a good thing, a very good thing.
    2. The current licensing in the kernel makes that impossible unless NVIDIA open sources its IP. Whether this is good is questionable because:
            a. It means NVIDIA has to give up a competitive edge OR
            b. NVIDIA has to write code and implement hardware in a manner that specifically prevents them from having a competitive edge.
    3. NVIDIA's only other option is massive duplication of effort and a fork of the Linux kernel. This is a questionable premise.

    So, given that NVIDIA's choice is to give up a competitive edge or to intentionally implement its feature set in an obstructionist manner, how is the GPL "good" in this case?

    1. Re:Honest Question by faragon · · Score: 4, Funny

      So, given that NVIDIA's choice is to give up a competitive edge or to intentionally implement its feature set in an obstructionist manner, how is the GPL "good" in this case?

      Because it is THE LAW. </Dredd>

    2. Re:Honest Question by Anonymous Coward · · Score: 5, Insightful

      I appreciate how you used the term "competitive edge" three times in such a short post. Oh, wait, no, I meant "I am nauseated by how". Don't they teach marketing shills anything in terms of subtlety any more?

      Anyway, you seem to be asserting that Nvidia's "competitive edge" is completely software-related. As in, the hardware — the actual graphics-computing stuff they sell, mind you — is somehow less important than the exact underpinnings of the drivers. This is an assertion that makes no sense to kernel developers. The drivers are just there to provide a way for the OS to communicate with the hardware. The hardware is supposed to be the magical part here.

      In my opinion, the ridiculously secretive nature of Nvidia, especially in the face of their major competitors opening up their drivers, is highly suspicious. After all, I thought they sold video cards, not drivers. It makes me think they're hiding Bad Things(tm) in the drivers. Unlicensed IP, perhaps? Evidence that their "value" models of video cards are actually the "premium" cards with drivers that shut down certain features? Crappy code? Or maybe just a behind-the-times product manager?

    3. Re:Honest Question by Bill,+Shooter+of+Bul · · Score: 4, Insightful

      How much of a "competitive edge" is really in their driver? And what kind of IP would be "open sourced"? This is GPL V2 we are talking about, they don't have to abandon any patents covered by the code or anything.

      Intel and AMD actually do open source drivers for linux. Those can make use of the wizbang. Who is at a competitive edge in that case? The one that makes a driver that can use the wizbang, or the one who cant*?

      Note there is a non Nvidia sponsered open source driver for their cards. They are more than welecome to add any whizbang they want with that.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    4. Re:Honest Question by Yvanhoe · · Score: 5, Insightful

      Well, we do want an open source system, for a variety of legitimate reasons. NVIDIA's edge is in hardware design, not software design. I, for one, would be happy that they provided an open source driver that give me access to all the 1 year old functionalities of their cards. That would not make them lose any edge.

      Also, a thing that NVIDIA probably fails to realize is that open sourcing their drivers will result in far more developers on it, therefore will probably raise their quality.

      I honestly doubt that ATI could get an edge from looking at the code of NVIDIA's drivers. Maybe some small marginal improvement but nothing that would improve their hardware.

      I think that this argument has been mainly FUD. Linux developers are a small population but they are opinion leaders in the market. The first company that goes open source will probably receive a popularity boost that will offset the little "edge" that they fear losing. Right now, this is Intel, despite very inferior hardwares, that is becoming more popular because of their 100% open source drivers.

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    5. Re:Honest Question by spikenerd · · Score: 3

      how is the GPL "good" in this case?

      Your are looking at it from the perspective of the company that did NOT write the code and is NOT interested in contributing. The GPL is not good for them. The GPL is "good" for everyone else. It is "good" for the whole world because it is NOT good for moochers. Yeah, it would be nice if we could let everyone, including moochers, use our open source code, but then we would accomplish less good overall. So, it is "good" that the GPL is so bad for NVIDIA.

    6. Re:Honest Question by peppepz · · Score: 5, Funny
      1. I want to give away a large amount of money to the poor. This is a good thing, a very good thing. I know that the bank near my house has a large amount of money.
      2. The current licensing of the bank makes it impossible for me to get the money, unless I work hard to earn it. Whether this is good is questionable because:
      a. It means that I have to get tired OR
      b. It means that I have to work like everybody else does for a living, preventing me to have an easier life than all the others.
      3) My only other option is that I have to find a less easy way to obtain the money rather than simply picking it up the from the bank. This is a questionable premise.

      So, given that my choice is to work to earn money or to give up the idea of giving money to the poor, how are private property laws "good" in this case?

    7. Re:Honest Question by Svartalf · · Score: 3, Informative

      Heh... If that were the case, AMD would've stood to lose a lot by what they did.

      Sorry, not buying it.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    8. Re:Honest Question by schwep · · Score: 2

      Being open about drivers for the hardware that is made up of your IP is very different then needing to open their hardware up. This is a subtle but important detail. It is completely reasonable to have an open interface to a closed piece of hardware.

      Personally, I was fed-up enough with the hacky, buggy nvidia linux drivers to switch hardware to intel graphics.

    9. Re:Honest Question by dudpixel · · Score: 5, Insightful

      I disagree. AMD has had open source drivers (and specs) for years now, and the quality is still terrible. Intel has open source drivers and I still wouldn't choose Intel graphics for anything serious.

      Sure, if all you want is a picture on your screen, then even the nouveau driver will get you there. But if you want fast graphics, like you get on windows, then this licensing crap is just another way of ensuring it won't come to linux.

      If NVIDIA started only offering its binary driver on BSD, windows and OSX, I think it's more likely that Linux users (particularly commercial ones) would switch to another OS, than switch to another graphics card manufacturer.

      If the quality of the other drivers/hardware was better, then that might not be the case, but AFAIC(oncerned) AMD's drivers are a bit flaky (even on windows) and intel's hardware has yet to come near the performance of AMD/NVIDIA.

      --
      This seemed like a reasonable sig at the time.
    10. Re:Honest Question by Waccoon · · Score: 2

      How much of a "competitive edge" is really in their driver?

      Lots and lots and lots of math and x86 optimization? Isn't this a market where a 5% performance difference makes or breaks a product?

      I'm not saying it's right, mind you. I gave up on AMD a while ago thanks to their sucky drivers and don't care much about performance. But, drivers most definitely do make a difference.

    11. Re:Honest Question by nut · · Score: 4, Insightful

      I read once (I think in a post on slashdot a couple of years back) that many hardware manufacturers keep their device drivers proprietary in order to hide the details of the hardware implementation.
      And that this is not so much to maintain, "a competitive edge," as to protect themselves from patent lawsuits from their competitors.

      So my reference is possibly not the most reliable, but my point is that they might not be hiding stuff just to screw over consumers. There are many other possible reasons.

      --
      Never trust a man in a blue trench coat, Never drive a car when you're dead
  9. Re:So? by Anonymous Coward · · Score: 5, Insightful

    And this is why graphics support will always be a third class citizen on linux.
    Congratz!

  10. One more bullet on proprietary drivers by Pope+Raymond+Lama · · Score: 5, Insightful

    They woul dhave a bad time coming along anyway, since they can't be compatible with the secure boot (UEFI) way of working (workaround if one prefers), that is being adopted by major distributions: all Kernel level code, and X11 code, will have to be signed to work out of the box in a UEFI restricted boot environment. And any distro that would sign binary code coming from NVIDIA or whoever else would be mad.

    It may be we get some months across a new "no working 3d drivers" dark ages on the Linux desktop, but one way or the other, the time for proprietary drivers is past.

    --
    -><- no .sig is good sig.
    1. Re:One more bullet on proprietary drivers by Kjella · · Score: 4, Insightful

      And any distro that would sign binary code coming from NVIDIA or whoever else would be mad.

      Sometimes I wonder what reality Slashdot lives in, a distro signing a nVidia driver would be no different than say Microsoft signing a nVidia driver. Of course the puritan distributions won't but they don't ship proprietary code anyway, it's not like Ubuntu would "vouch" more for nVidia than Microsoft does. If the nVidia code is full of shitty security holes that's not really the distro's problem as long as it's "genuine" nVidia code.

      --
      Live today, because you never know what tomorrow brings
  11. Why is this supposed to be a good thing? by JDG1980 · · Score: 3, Insightful

    Am I missing something? Isn't this going to hurt Linux a lot more than it is going to hurt nVidia? Sure, it would be great if nVidia open-sourced their driver code, but it's pretty clear that this is not going to happen. What effect will this have other than to make Linux drivers for nVidia cards of inferior quality?

    For Linux the religion, this is a triumph. For Linux the operating system, it is a major setback.

    1. Re:Why is this supposed to be a good thing? by pipatron · · Score: 4, Interesting

      So what, exactly, is linux to you? If you want a proprietary operating system with closed drivers, there are plenty. Bending over sideways for a paranoid corporation just to get high definition pornography in 3D on your notebook sounds like a real bad idea to me.

      --
      c++; /* this makes c bigger but returns the old value */
    2. Re:Why is this supposed to be a good thing? by Infernal+Device · · Score: 2

      So what, exactly, is linux to you? If you want a proprietary operating system with closed drivers, there are plenty. Bending over sideways for a paranoid corporation just to get high definition pornography in 3D on your notebook sounds like a real bad idea to me.

      Depends on whether or not you want to further the mainstream adoption of Linux on the desktop by non-technical users.

      Were I a corporation, this would be the point where I would determine that my development efforts for Linux have gone far enough until there is a high-enough percentage of usage to warrant further development.

      --
      "My God...it's full of trolls!"
    3. Re:Why is this supposed to be a good thing? by Svartalf · · Score: 5, Insightful

      No, it's not.

      You and everyone KEEP presuming the only space at stake here. There's another and they want to play in this space badly because it's big-bucks for them or they wouldn't have done it in the first place. (Hint: There was no good reason for the Linux drivers they've made to date- because there really wasn't a market for those end-user drivers (these are treated as such by the community, but they're not really for the consumer market...) until recently in the first place.

      Think engineering workstations (early reasons...seriously, for both AMD and NVidia...) and supercomputing clusters using GPGPU computation (There's a reason for the opening of AMD's stuff...that's part of that.).

      If they want to play in that space...they're going to have to change attitudes, much like AMD did.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    4. Re:Why is this supposed to be a good thing? by bug1 · · Score: 2

      Isn't this going to hurt Linux a lot more than it is going to hurt nVidia?

      It wont hurt serious Linux users, they all switched to AMD/ATI a long time ago.

      AMD have committed themselves to releasing technical specs for their product that make it much easier for the community to write open source drivers.

      NVIDIA have spent years fighting attempts to create open source drivers for their products.

      NVIDIA is an unimportant hardware vendor for Linux, their problems can be avoided by giving money to their competitor.

  12. Translation by Sez+Zero · · Score: 2

    You may consider that formal notification of my viewpoint. Your corporate legal team can explain to you why the fact you are now aware of my view is important to them.

    Translation: Go see your corp lawyers. FYI, you're about to get spanked.

    1. Re:Translation by gstoddart · · Score: 3, Interesting

      Translation: Go see your corp lawyers. FYI, you're about to get spanked.

      Slightly more neutral translation: now that you have been officially informed we will not be marking it as non-GPL, if you use it, you are in violation of copyright. And your having been told means you don't have a legal leg to stand on if you ignore this.

      Oh, and, FYI, you're about to be spanked. ;-)

      --
      Lost at C:>. Found at C.
    2. Re:Translation by outZider · · Score: 2

      Actual Translation: F you, we don't need proprietary drivers. We're totally okay with being a niche player forever.

      --
      - oZ
      // i am here.
    3. Re:Translation by pavon · · Score: 3, Insightful

      No, that isn't the implication. Whether they are in violation of copyright or not depends on whether their drivers are a derivative work of Linux, and if so whether fair use would allow them anyway. Both of these things are decided by courts not by the copyright holder. The significance of his notification is in determining whether the infringement is willful or not, and thus eligible for stronger penalties.

    4. Re:Translation by ceoyoyo · · Score: 3, Interesting

      Yeah, that's more like it. These guys are probably nVidia employees who like Linux and probably had something to do with convincing their bosses to let them work on Linux drivers. They asked Cox if something could be done about the licensing of a little part of the kernel so the drivers they write could use a new feature. Cox told them to F off.

      I really doubt nVidia cares. The only ones disappointed are these driver coders and anybody who wants to use multiple GPUs on Linux.

  13. Re:And this is why by RocketScientist · · Score: 2

    Exactly what's the impact-level difference between the GPL and software patents then?

    Oh yeah, patents expire, and copyright doesn't. Gotcha.

    Great PR here guys.

  14. Face Reality: by CajunArson · · Score: 4, Insightful

    While Linus got lots of publicity for mouthing off at Nvidia over Optimus support, the truth is that X.org just recently released server 1.13 that has initial support for Optimus-like technologies and it would not have mattered one bit what license Nvidia used for its driver code.

    The cold hard truth is: Nvidia isn't going to GPL its drivers and it couldn't do so even if it wanted to. Nvidia's developers *have* been trying to help out with adding code to the kernel for DMA-BUF that will be GPL and will help other pieces of hardware in addition to Nvidia hardware. There will probably have to be a compromise at some point on this even if the idealogical purists get their panties in a knot over it.

    --
    AntiFA: An abbreviation for Anti First Amendment.
    1. Re:Face Reality: by amorsen · · Score: 5, Insightful

      Nvidia isn't going to GPL its drivers and it couldn't do so even if it wanted to.

      Of course Nvidia could GPL its drivers. That "they can't do it" been said ever since the first proprietary Nvidia Linux driver, and back then it was blamed on non-specified technology licensed from SGI. SGI then stated publicly that they had absolutely no problem with their technology ending up in a GPL'd Linux driver.

      It is just a pitiful excuse. Luckily, between "secure boot" and this, the excuse will not last much longer. Then it will be either GPL or nothing at all.

      --
      Finally! A year of moderation! Ready for 2019?
    2. Re:Face Reality: by Cid+Highwind · · Score: 2

      I suspect it's not about what nVidia licensed, but what they didn't license. The binary blob is a huge mass of code, just given the size and what it does, and the sheer number of graphics-related patents out there, it's a fair bet they're infringing on something.

      --
      0 1 - just my two bits
    3. Re:Face Reality: by Svartalf · · Score: 4, Interesting

      In truth, that statement was a LIE, and they knew it. If there was actual cards that I could've laid hands on back when the NV1 was out, there would've been a Utah-GLX driver because they made the programming interfaces for an NV1 publicly available at the time I was one of the Utah-GLX developers.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    4. Re:Face Reality: by amorsen · · Score: 3, Informative

      Linux has had proprietary video drivers for more than 15 years. That has obviously not brought world domination. Yes, in the short term it will force a few more users to boot into Windows to play 3D games, but almost all Linux users who play 3D games do that anyway.

      15 years of proprietary video drivers has not brought 3ds Max to Linux, even though it would have been an extremely straightforward port of the SGI version, way back when. Exactly the same applies to AutoCAD.

      --
      Finally! A year of moderation! Ready for 2019?
    5. Re:Face Reality: by epyT-R · · Score: 2

      ...and if they let nvidia have their way, dozens of other vendors will demand the same and linux will end up as riddled with blobs and thus as undebuggable and unportable as android. Thus alan and co lose anyway. Better to fight..

  15. What Cox is saying... by AliasMarlowe · · Score: 5, Insightful

    Actually, he's telling them that they can use DMA-BUF in their video drivers. And so can anyone else, provided those drivers are released under GPL.

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
    1. Re:What Cox is saying... by Chris+Mattern · · Score: 3, Insightful

      Actually, he's telling them that they can use DMA-BUF in their video drivers. And so can anyone else, provided those drivers are released under GPL.

      Which requires that everything *else* in the driver be compatible with the GPL. Which...they aren't. So they can't.

    2. Re:What Cox is saying... by MtHuurne · · Score: 5, Insightful

      Intel releases their drivers as GPL, I don't see why NVIDIA couldn't do the same. They choose not to.

      Now, there might be sublicensed code in the driver that NVIDIA doesn't own, so maybe they cannot release it under GPL tomorrow, but it would be feasible as a long term project.

    3. Re:What Cox is saying... by Jeremiah+Cornelius · · Score: 4, Insightful

      Implicit in this is the proposition that GPL IS GOOD FOR INNOVATION.

      You better make a flippin' good GPU, and invest there. If you depend on drivers to add value, and you fail to deliver on this? Someone is free to improve or replace your driver.

      Meanwhile, the other guys compete with a level playing field.

      This is promotion of innovation over obfuscation.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    4. Re:What Cox is saying... by Anonymous Coward · · Score: 5, Informative

      They probably don't want to because they likely infringe on either software patents in the drivers themselves or hardware patents that opening their drivers would expose. Once they opened their drivers they probably would get jumped on by 40 million patent trolls and sued into the ground, as well as being injunction'd from releasing any driver for any operating system (read: not make any money, have increased legal costs, and go out of business).

    5. Re:What Cox is saying... by TheRaven64 · · Score: 5, Insightful

      Intel did not release their drivers under the GPL. Intel implemented new drivers from scratch. Relicensing existing code is really hard for something like a graphics driver, which contains code licensed from third parties. Oh, and they're under an MIT license like the rest of X11 and the DRI infrastructure, not the GPL.

      --
      I am TheRaven on Soylent News
    6. Re:What Cox is saying... by jedidiah · · Score: 5, Insightful

      > rather than the usual GPL zealot approach of Plagiarism-then-shouting-innovation.

      In truth, that pretty much describes the entire industry and creative efforts in general.

      Bitching about "innovation" generally is a smokescreen to excuse abusive, anti-competitive, and monopolistic business practices.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    7. Re:What Cox is saying... by TFAFalcon · · Score: 5, Insightful

      Well DMA-BUF (what this article is about) seems to be pretty innovative. And it is covered by GPL.

    8. Re:What Cox is saying... by Svartalf · · Score: 2

      Actually, they COULD be doing it (They're doing some of at least documentation for Tegra...), but it's a business decision to not be, so they can't. Be specific.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    9. Re:What Cox is saying... by newcastlejon · · Score: 3, Informative

      For future reference, the word you were looking for is "enjoined". It means being prohibited from doing something by means of an injunction.

      --
      If God forks the Universe every time you roll a die, he'd better have a damned good memory.
    10. Re:What Cox is saying... by MtHuurne · · Score: 5, Interesting

      This did not stop Intel from releasing drivers, or AMD from releasing detailed technical documentation. And the Nouveau drivers already expose some of the functionality of NVIDIA's hardware. Also, both AMD and NVIDIA chips are being used in game consoles and those are programmed by sending command lists directly to the GPU, so console game developers have detailed technical descriptions of those GPUs; it's not like their programming interface is so secret that it never leaves NVIDIA HQ.

    11. Re:What Cox is saying... by DM9290 · · Score: 2

      Beyond a mere declaration of a function header nothing else in code that dynamically links to another object is derived from that object. And since that small snippet is an API it is not copyright protected by law. So you don't need the GPL to derive from it.

      As far as any data being passed back and forth at run time - you are not the one who is copying that data, (it happens at runtime in response to actions of another human being who has dynamically linked the other object) so you are not the one who is deriving anything from the software.

      If I'm wrong I'd love to know about the court case that contradicted me.

      --
      No one has a right to their *own* opinion. They have a right to the TRUTH.
    12. Re:What Cox is saying... by Anonymous Coward · · Score: 2, Interesting

      Ah, I didn't know Intel wrote new drivers from scratch. Still, the fact that Intel can do it shows that NVIDIA could do it as well, if they would choose to do so.

      Dear /., this is an example of naivete and idealism: NVIDIA for one is nowhere near the size or capacity of Intel, in terms of development, ability to make, influence, dominate markets, set platforms... Secondly, who wants to bet who has more patents, strings and connections, and ways to leverage force in the event that all cards are laid bare? I will take Intel on that bet any day (and I have spoken to employees or close contacts of employees of NVIDIA, which I will not reveal, about various matters in regards items of concern relevant to these narratives and this story). Anyway, as far as the GPL is concerned, if it's version 2, then they probably wouldn't have to worry: leaving aside the bullshit rhetoric from the FSF which attempts to conceal the fact that it leaves a path wide enough for several mack trucks to drive through (as far as combining GPL code with non-GPL code), a lot of the rhetoric about "derivatives" is simply mis-use of that term and wishful re-thinking of what 'derivative" means: they COULD build inter-operable code and simply...not distribute the GPL code in question, and leave it to the user to download their driver, like, you know, they already do.

      Go NVIDIA, just do it: don't put their code directly into your system, and have your driver just replace the relevant portions like you...already do with X and other fundamental system components on Linux. Because, you know, it's always better to ignore the zealots, who are bad for business, and often as bad for the cause they advocate. Now everyone read THIS actually-intelligent comment, http://linux.slashdot.org/comments.pl?sid=3179477&cid=41624939

    13. Re:What Cox is saying... by MtHuurne · · Score: 3, Insightful

      Dear /., this is an example of naivete and idealism:

      Naive? Maybe. I'm not an industry insider, so please educate me if I make incorrect assumptions or overlook important issues.

      Idealism? No. I'm typing this on my PC that runs NVIDIA's proprietary Linux driver. I'm saying NVIDIA could release an open source driver, not that they should. (*)

      NVIDIA for one is nowhere near the size or capacity of Intel, in terms of development, ability to make, influence, dominate markets, set platforms... Secondly, who wants to bet who has more patents, strings and connections, and ways to leverage force in the event that all cards are laid bare?

      In a battle with a patent troll, your own patent portfolio, market dominance etc doesn't matter, only that you have a good legal team and deep enough pockets. In a patent battle with a competitor, I don't think open drivers make that much of a difference, since the opponent will have enough expertise to demonstrate patent infringement even without the driver source code.

      Anyway, as far as the GPL is concerned, if it's version 2, then they probably wouldn't have to worry:

      The Linux kernel is licensed under GPLv2 and that is unlikely to change.

      they COULD build inter-operable code and simply...not distribute the GPL code in question, and leave it to the user to download their driver, like, you know, they already do.

      This discussion is not about NVIDIA distributing GPL-ed kernel code, it's about which functions a non-GPL driver is allowed to call. The view of the kernel maintainers seems to be that loading a module makes that code part of the kernel, not a separate program and it is therefore bound to licensing rules set by the kernel. If this is not true, then there is no difference between EXPORT_SYMBOL and EXPORT_SYMBOL_GPL and there is also no need to change the declaration of the dma-buf symbols.

      (*) I would like them to release an open source driver, but I know it's not likely to happen. NVIDIA's driver is designed to run the same code on many platforms, I think there was a presentation that said 90% of the code is platform independent. This approach makes it harder to integrate with Linux though, since NVIDIA has their own solutions for things that Linux and Xorg solve in a different way. So even if the driver source is opened, it would be a lot of work to make the driver integrate well with the existing open source graphics infrastructure. And if that is achieved, NVIDIA would be facing two driver source trees to maintain instead of one, although the Linux-specific one would be considerably smaller than the generic one.

  16. Us Orthodox Stallmanites by Anonymous Coward · · Score: 4, Insightful

    There, fixed it for you.

  17. Re:And this is why by Anonymous Coward · · Score: 4, Insightful

    They simply won't use it at all, and thus graphics support on linux lags further and further behind.
    Grats on the ideological win though!

  18. Re:This is why I suggest BSD by Ignacio · · Score: 4, Insightful

    Okay, so it's not freedom then. It's quasi-freedom. But at least no one has the freedom to take my quasi-freedom away. If they want in then they have to add to the pool of quasi-freedom instead of taking anything away.

  19. Hmmm... by Ynot_82 · · Score: 4, Interesting

    Playing devil's Advocate here, as personally I agree with this (and don't let the proprietary nVidia driver anywhere near my system).
    But just for kicks, how does the recent case of Oracle trying (and failing) to claim copyright on the Java APIs affect this.

    If you cannot copyright an API, then you cannot apply a copyright license either.

    What if nVidia challenged this with exactly the same arguments that Google used with Dalvik.

    1. Re:Hmmm... by jerpyro · · Score: 2

      What if nVidia challenged this with exactly the same arguments that Google used with Dalvik.

      It won't happen because it's not worth their effort. If I can get 95% of the market with 50% of the effort, that sounds like a good business decision to me.

    2. Re:Hmmm... by Anonymous Coward · · Score: 5, Informative

      You are getting muddled. The googVorc case was if oracle could copy right the API (that is, the list of function name, their hierarchy, intput/outputs) and prevent google from doing a clean room implementation that complies with their API. In this case, they are saying NVIDIA can't make an API call _into their code_ and ship proprietary bundles linked against their GPL library. NVIDIA could do a clean-room re-implementation of the kernel if they wanted to, but that is not what is going on here.

      If you don't have the constraint that linking is derivative then the whole notion of copy-left is dead, as you can fully use any library in any application. The authors are giving you a license to use their code for free, they can put what ever restrictions on that license they want.

    3. Re:Hmmm... by Anonymous Coward · · Score: 3, Insightful

      This isn't about just the interface, but the code in the kernel that does the stuff that is exposed/called through the interface. They're of course free to re-implement that on their own w/o using any GPL'd code - but it's a bit more work than a Hello World! ...

  20. Re:And this is why by D.+Taylor · · Score: 5, Insightful

    No, they would have called this API from their proprietary binary blob drivers, not copied or modified the code implementing it.

  21. Re:And this is why by Serious+Callers+Only · · Score: 5, Insightful

    And if it leads hardware vendors to avoid writing sophisticated drivers for Linux (a far more likely outcome), what then?

    Why would nvidia want to deal with fanatics like this when they can just ignore them?

  22. Re:And this is why by Anonymous Coward · · Score: 4, Insightful

    If it leads to vendor GPU drivers being developed in the open then I'm in!

    Spoilers: It wont.

  23. Re:And this is why by irwiss · · Score: 3, Insightful

    ATI driver being open is the reason it's so stable and leaves nvidia in the dust performance wise, right? Oh wait

  24. Re:And this is why by Baloroth · · Score: 3, Insightful

    If it leads to vendor GPU drivers being developed in the open then I'm in!

    Why were you upset again?

    ...because it won't, and never will, and because this is the Linux community attempting to force Nvidia to develop open-source drivers, which is just about the exact opposite of freedom. Or at least, that is what it looks like to me (hard to say, since IANAL nor do I work on the Linux kernel), and therefore is what it will look like to a lot of people. And it's why graphics on Linux sucks, forcing people to use Windows instead.

    Linux's greatest enemy is quite often itself. Which is fine, if you only ever want to use it on a server... but if you want it to be a serious competitor to Windows, it won't be. Ever. There will never be a "year of Linux on the desktop", not so long as these kinds of restrictions exist.

    --
    "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
  25. Re:This is why I suggest BSD by Patch86 · · Score: 2, Insightful

    If this were BSD, Alan Cox would have had his hard work stolen from him against his will, and he wouldn't have been able to do anything about it. Nvidia could have taken his code and released it in their binary blobs, and he'd never see any benefit from it again.

    So why is that a reason for him to go BSD instead of GPL?

  26. Re:And this is why by fredprado · · Score: 4, Insightful

    Apparently they think it is worth it, as they have been doing it for a while. It is all a matter of who has the power. The tech company that wants the market or the consumers. In this case it is the consumers (or fanatics if you prefer).

    Bowing to the will of tech companies is the best way to have very disgusting stuff pushed into your throat.

  27. Re:And this is why by D.+Taylor · · Score: 4, Insightful

    That is not correct. If the symbol is marked EXPORT_SYMBOL_GPL then only GPL-licenced modules can use that symbol (i.e. call the API). They are already unable to include the code in their proprietary driver, as the code is released under the GPL which already prohibits them copying the code into a non-GPL-compatible codebase.

  28. Nouveau? by mynis01 · · Score: 2

    What I'm wondering is, since he came out and said the little bit about using DMA-BUF with the proprietary code, and NVIDIA is starting to share specs with the nouveau devs, do you think NVIDIA might be able to help make nouveau work a bit better with optimus?

    1. Re:Nouveau? by gtirloni · · Score: 2

      It makes sense. NVIDIA might realize what a great hassle it is to continue developing their proprietary driver because 1) they can't use the cool new stuff in the Linux kernel and 2) they have to disclose their code if they want to do use that..... so they can avoid all that legal nightmare by contributing to the nouveau driver instead. Sounds reasonable to me, specially since end users think the proprietary drivers are nice but everytime they break upon a kernel upgrade... there is a lot of cursing so nouveau, even if it's not optimal yet, looks like a better alternative in that front. Death to binary blobs :-)

      --
      none
  29. Re:And this is why by smooth+wombat · · Score: 3, Interesting

    If you want good 3d acceleration, then write the code yourself. Isn't that the Linux mantra, "You can always write your own code."?

    Wait, you're not a developer? You can't code? Awww, sucks to be you.

    Now you know how everyone else feels who tries to use Linux to get something to work and is told either to roll their own code or RTFM.

    If this is to become "The Year of the Linux!"*, the folks managing the packages need to make some hard decisions on how to proceed, otherwise this situation will keep coming up over and over.

    * From Cletus, the slack-jawed yokel. Similar to saying, using these here internets.

    --
    We will bankrupt ourselves in the vain search for absolute security. -- Dwight D. Eisenhower
  30. Re:And this is why by Unknown+Lamer · · Score: 5, Informative

    The Intel drivers are a better example: they are rock solid, Intel has contributed tons toward advancing the graphics stack, etc. AMD has maintained a split development effort: hiring external companies and providing some docs for the Free drivers, all the while putting their main development effort into their proprietary FGLRX driver. I suspect that's the real reason their drivers are kind of crap.

    --

    HAL 7000, fewer features than the HAL 9000, but just as homicidal!
  31. Re:It would still become a derived work of the ker by crankyspice · · Score: 2

    Isn't the Linux kernel and its API expressly exempted from the viral nature of the GPL? Per the COPYING file: “NOTE! This copyright does *not* cover user programs that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work".”

    --
    geek. lawyer.
  32. Re:And this is why by Anonymous Coward · · Score: 5, Insightful

    Okay, great, if the world was perfect you'd have a great day! Yay!

    But, what if this change means that nVidia and all ARM graphics drivers come up with their own non-GPL kernel API, it would probably not be compatible with DMA-BUF, and that means that the graphics drivers in the Linux kernel - both open source and not - would pick and choose which buffer sharing mechanism they support/use, leaving the rest out in the cold. This situation just so happens to negate the ENTIRE purpose DMA-BUF was created for, namely, to act as a SINGLE way for ALL drivers to share and pass buffers around. So, instead of creating a BETTER situation where all graphics drivers are compatible with each other (even the proprietary ones), we have a crappy situation that we've continued to have since day one - proprietary and open source graphics driver not playing nice with each other.

    It's even in your short term and long term best interests to get everybody to use DMA-BUF, because the faster that happens the easier it is to use Linux, the more people start to use Linux, and Linux users slowly start to become more and more relevant to driver manufacturers to the point that, like Mac users, they become a profitable segment of the computer using population (note that this is both for desktop users with nVidia cards, or short term uses, and all ARM drivers for embedded devices which are becoming more popular, or long term uses), and graphics developers start to support them as best they can (read: supporting open source driver development).

    While this is happening - in other words, while the world is ruled by proprietary graphics drivers because the open source ones suck (as is currently the case, and although it's improving is likely to continue to be the case for at least another two years), you can have your Left 4 Dead 2 on Linux with the proprietary nVidia driver that it needs, you can have lower power usage on all Linux laptops because Intel and nVidia cards can share buffers and therefore change which card is actively processing depending on what is running, and you can actually have useful drivers for all embedded devices until open source graphics drivers are available (whenever that happens, as it is barely on the radar of developers at this point).

    So, you (and Alan Cox) can be complete dicks about this and hold the Linux desktop and Linux embedded devices with decent drivers back for years because nobody bothers to support such a tiny market with open source drivers, or you can allow proprietary graphics card manufacturers to keep their hold on graphics drivers for a few years and keep the vast majority of users happy because they have a device that works well enough (even though it doesn't have open source graphics drivers) UNTIL the community develops open source drivers themselves.

    So, what's more important to you, possibly helping proprietary vendors temporarily and helping desktop and embedded users out tremendously for the next few years; or keeping your kernel untainted by proprietary crap, unhelpful to proprietary vendors, and keeping the kernel the same mess it has always been, and pissing off the vast majority of desktop and embedded users for years?

    I would argue that Valve is only porting Steam and their games to Linux because the nVidia graphics drivers exist (because their games require OpenGL 4+, which isn't supported, and will not be support for years, by open source drivers). And yet, them porting their AAA title games is going to tremendously help Linux break out of its insignificant shell on the desktop - which will drive adoption, drive demand for Linux, and ultimately drive the demand for open source drivers anyway.

    So, take a deep breath, calm down, and just accept the fact that allowing something to be temporarily imperfect in your world is a good trade off to make to have a much better world a few years from now.

    Furthermore, DRI3 (the userspace API) will become dependent on DMA-BUF once it is developed, which means that DMA-BUF will become a usersp

  33. Re:And this is why by Anonymous Coward · · Score: 3, Insightful

    Bowing to the will of tech companies is the best way to have very disgusting stuff pushed into your throat.

    You need to chose your fights carefully. If this was about forcing a 10G network adapter to release it's code as GPL, I would have supported it 100%. No NIC vendor can afford to ignore the Linux server market.

    On graphics though, Linux has very little leverage. The mere fact that nVidia delivers a huge blob that barely works is a big red flag. Adobe dropping Flash is another. Beggars can't be choosers. So even if you support the ideology, it's a lame move to further it, you amplifying the snowball effect against Linux. I can accept it's technically unfeasible to gather all those approvals. But to reject on ideological grounds is like trading a queen for a pawn.

  34. Re:So? by Anonymous Coward · · Score: 5, Insightful

    Are you hating or just misinformed? NVIDIA ranks second in terms of total lines changed for the ARM kernel, and fourth in terms of number of changesets for all employers or organizations. That's sharing.

    The only thing they don't share is their graphics drivers - which seems like a fair trade overall. nVidia has licensed patented code which they couldn't share even if they wanted to.

    NVIDIA will likely just build their own DMA memcpy routine - because copying memory is SOOO unique.

    Full disclosure: I develop (unrelated) proprietary kernel modules, I'm very familiar with the licensing, patent and copyright issues and we work within the GPL limits defined by the kernel team.

  35. Re:Yes it is. Read what derived works are. by Anonymous Coward · · Score: 3, Interesting

    First off, use of someone's else characters in a new story is perfectly legal (e.g., see "Wind Done Gone"). You just do not have the money to fight them when they sue. Second off, writing my own code is not the same as uses someone else's characters in a story. The code is wholly 100% mine. Please read up on the copyright law before you run your mouth.

  36. Re:And this is why by binarylarry · · Score: 2

    If Nvidia wants to use the Linux kernel, they need to abide by the license rules.

    Otherwise it's like saying bank robbers are the good guys, because people need money and the banks are trying to enforce their ideology on everyone.

    --
    Mod me down, my New Earth Global Warmingist friends!
  37. Re:And this is why by fredprado · · Score: 2

    Say this again when NVIDIA GPUs stop being picked for android mobile devices...

  38. Re:It would still become a derived work of the ker by KiloByte · · Score: 4, Insightful

    User programs, not in-kernel drivers.

    --
    The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
  39. Re:The API isn't GPL. Using the kernel code is. by crankyspice · · Score: 4, Interesting

    derived works definition for software.

    Which is what, exactly? I'm a copyright attorney who has studied computer science at the post-graduate level (and am a Tau Beta Pi member), and I still can't give you a coherent, comprehensive definition for 'derived work' in software that's applicable throughout the whole of the United States, let alone internationally. The GPL is a clusterfuck in that respect, and it's never been considered by any authoritative (i.e., Federal Circuit level) court...

    --
    geek. lawyer.
  40. Also opening up their code isn't simple by Sycraft-fu · · Score: 5, Interesting

    They have many licensed components in their code. So they have to remove all that and rework it, and do it in such a fashion as to not get sued by those companies (who might claim that the nVidia programmers couldn't work on the new code since they'd seen the licensed code). This isn't just some more minor features such as S3 texture compression, but OpenGL itself. Go look it up, OpenGL isn't a free "do whatever you like" setup. There is licensing for it for companies like nVidia.

    Even worse is that because the issue isn't just opening the source, but actually GPLing it, that makes it so much harder. Some of their licensed components are things the companies might be ok with source distribution. However nVidia doesn't have the right to relicense that code under the GPL. So even if they opened it, it wouldn't do any good as the GPL is what is required here.

    So the argument of "just open the driver" is somewhat unrealistic. It isn't just that nVidia likes to have a competitive edge, though they surely do, but that it would be a major issue and a lot more work to try and do so, if it were even possible.

    Again, take the OpenGL issue since it is a pretty fundamental one. nVidia licenses the code and has the latest OpenGL 4.3 implemented on cards that support it. Ok so let's say they decide to grab the Mesa code for an OSS branch. It's MIT license which is GPL compatible so good to go right? Well, not really. Mesa is OpenGL 3.1, 3 years out of date, and it only recently got that. So they can either deal without a bunch of features on all platforms, have two different drivers one full featured on Windows and such, one with less features, or they can invest a ton of work to try and make their own up to date OSS OpenGL implementation and hope they aren't sued.

    None of those sound like very good uses of resources.

    1. Re:Also opening up their code isn't simple by mrchaotica · · Score: 2

      Good job... now give us all the excuses about why Nvidia can't give documentation to the Nouveau devs, please.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  41. Re:And this is why by clarkn0va · · Score: 4, Insightful

    GPL licensors demand that others don't redistribute GPL code as their own. Proprietary licensors demand that others don't use their code at all without their express permission, full stop. Who's the fanatic here?

    --
    I am literally 3000 tokens away from the chaotic crossbow --Stephen
  42. Re:And this is why by AvitarX · · Score: 2

    Google used the apis and re implemented the code.

    if nvidia wants to re write linux with the same apis, they are welcome to.

    --
    Wow, sent an e-mail as suggested when clicking on "use classic" banner, and got a fast response that addressed my msg
  43. Re:This is why I suggest BSD by oPless · · Score: 5, Insightful

    PSST, this is an API called marked in such a way that only GPL modules are allowed to call it.

    It's a deliberate act of douchbaggery by kernel developers to force manufacturers to open source their drivers, not to steal code from the kernel.

  44. Shim the damn thing by Urban+Garlic · · Score: 2

    So obviously Alan Cox is much more of an expert than I am, but I've installed the binary nVidia blob on many, many machines, so I'm aware that there is a "shim" interface layer that gets built at install-time to bridge between the closed-source nVidia stuff and the actual kernel. This shim is visible, obviously you can *read* it if you unpack nVidia's installer, and it uses kernel header files at build-time.

    It seems that this has to mean that there is already a way to get closed-source binary blobs to talk to the kernel, and that nVidia already knows how to do this.

    Can someone explain why this is different? Why can't the DMA-BUF code be part of the shim, or part of a different shim? It's technically more complex, but I can't believe that nVidia of all people are slowed down by some technical complexity.

    --
    2*3*3*3*3*11*251
  45. Re:So? by peppepz · · Score: 5, Insightful

    No, this is why linux exists in the first place.

  46. Re:And this is why by edwdig · · Score: 2

    Without the GPL, they would have just used the existing implementation.

    With the GPL, they're going to have to recreate the functionality themselves. Their implementation will probably be closed source. They might consider contributing it to the kernel with more permissive licensing terms, but considering how Alan Cox reacted to their request, I doubt it would be received well. Now we'll have duplicate, incompatible functionality being maintained by the kernel devs and NVIDIA. Either that, or NVIDIA will simply do without the feature and release inferior drivers.

  47. Re:And this is why by u64 · · Score: 2, Insightful

    Nothing *forces* Nvidia to write drivers at all. It's their own choice.

    GPL is a protection against abuse. The only freedom-restriction is that people are disallowed to abuse the freedoms granted by GPL.

    Nvidias propriatary software *IS* the exact opposite of freedom for anyone silly enough to use it.

    As for quality of software being better on Windows, that's sadly true sometimes. GPL won't change, it's practically set in stone to guarantee freedom. Nvidia however, can choose to create free drivers, just as many others do. Blame Nvidia for failing to meet the costumers needs.

    (IANAL, but i think i'm in the ballpark)

  48. Re:And this is why by rs1n · · Score: 2

    If NVIDIA were the only GPU makers then your concern would make for a stronger point. However, there are other GPU makers: ATI and Intel for example.

  49. Re:And this is why by PlusFiveTroll · · Score: 4, Insightful

    Linux has a license (GPL) that states some requirements on what you can and can't do with it, this license is wrote that way so the code will remain free. This is an ideological ideal and not a business ideal, therefore they clash. It protects against companies like Microsoft doing 'Embrace, Extend, Extinguish". Evidently you like the idea of a world where a few patent holders control our computing technology. True freedom is also allowing the biggest, baddest, and meanest to set the law. True freedom is allowing business interests to take chunks of Linux wrap them up in binaries and keep them hidden away from everyone the community that built it. True freedom is a person busting in to a house with a gun, killing everybody, and taking what they want without any worry of law.

    The GPL is preventing that corporate psychopath from taking what he wants with his power and instead establishes a level playing field.

    It seems odd you want 'Linux' to become Microsoft to beat Microsoft, I don't see how anybody gains anything in the end.

  50. Re:Android on ARM by Wesley+Felter · · Score: 4, Insightful

    Android developers don't care about desktop Linux and are willing to fork anything that gets in their way. They've done it before.

    Android will end up with 3D that works fine; it will just be based on different APIs than desktop Linux.

  51. Re:And this is why by Rockoon · · Score: 3, Insightful

    The Ivy Bridge GPUs are pretty serious.

    According to Intel and fanboys, sure. Not according to benchmarks.

    My current video card was released in late 2007 and was ~$250 upon release so wasnt even top notch at the time, and I significantly down-clock it to keep its fan quiet.

    It still delivers nearly twice the FPS as Intels flagship HD 4000 Ivy. So we are talking about a down-clocked 5 year old mid-range video card that is still beating up Intels greatest offering ever.

    Try again, fanboy.

    --
    "His name was James Damore."
  52. Re:It would still become a derived work of the ker by MickyTheIdiot · · Score: 5, Insightful

    Please don't echo the Microsoft buffoonery of calling the GPL "viral".

    If it's viral it's a virus you choose to contract.

  53. Re:It would still become a derived work of the ker by DarwinSurvivor · · Score: 4, Insightful

    Also, from what I understand in the GPL, that notice isn't an excemption added to the GPL, it is a notice that simply clarifies what is already in there.

  54. Re:And this is why by vux984 · · Score: 2

    There will never be a "year of Linux on the desktop", not so long as these kinds of restrictions exist.

    And without those restrictions there will never be a "year of linux on the desktop" because after you bolt enough proprietary stuff onto it it's not really linux anymore, and the whole point of having an open source operating system will have been entirely subverted.

    Linux's greatest enemy is quite often itself.

    Not really. Its greatest enemy are those willing to compromise on the ideals for convenience or marketshare.

    To use a car analogy; suppose I started a car company with the goal of releasing an affordable all-electric emissions free vehicle. Sounds great. But the range is kind of low, and its a hard problem to solve.

    We could install a diesel engine in it, which is inexpensive and gives us the range we want. Sure it subverts the entire idea of making an all-electric emissions free vehicle... but hey did we want to get a car to mass market this year or not?

    Richard Stallman's fierce stance on freedom may be seen as a hindrance to Linux adoption by many; but he's the guy drawing a line in the sand saying "No, you can't put a diesel engine into the all-electric emission free car because."

    He, and the people who draw a line in the sand are the ones that ensure Linux can exist in a meaningful way at all.

  55. Re:So? by peppepz · · Score: 5, Informative
    NVIDIA only shares the stuff they're forced to share by virtue of the GPL. The lines they added to the ARM kernel are there only because they were forced to release the core changes needed to support their ARM SOCs.

    A couple years ago, back when they had the upper hand, NVIDIA did not even open up the drivers for their ethernet chips, $DEITY knows what trade secrets could have been hidden in a ethernet driver.

    Also, don't say that they're not opening the code because it's licensed by third parties: they don't even release documentation for their chips. The truth is that they don't care about open source, and will behave only when forced to.

    Full disclosure: Linus Torvalds develops the linux kernel, he's very vamiliar with the licensing, patent and copyright issues and relationships with NVIDIA, and sent them to "fuck themselves" (sic.).

  56. Re:And this is why by peppepz · · Score: 3, Insightful
    Because those fanatics happen to have written a seriously good kernel, which is being used by millions of people and hundreds of successful commercial companies.

    NVIDIA are the outliers here, everyone else is doing the good thing.

  57. you got your backwards backwards by IBitOBear · · Score: 5, Insightful

    Linux developers are not trying to "force" anybody to do anything. Nvidia is trying to force the linux community to accept their unacceptable "super secret" blob into the kernel agains the linux community's development and participatation standards.

    If I showed up on your doorstep and said "you have to let me use your bathroom and your kitchen, but I am not going to wash my hands or put on pants" you would not be "forcing" me to (anything) by saying that my intended pantless, unwashed use of your facilities was unacceptable.

    The Linux community is telling nvidia "we use soap and pants here, if you won't do likewise, we don't feel like accomodating you."

    Nvidia _knows_ they want in, otherwise they wouldent be trying to get in, Linux Don't Care if they come or not, but if they come they need pants...

    Requiring someone to meet minimum standards for participation is not "forcing them" to do anything,

    No pants, no access is not an unreasonable position.

    --
    Innocent people shouldn't be forced to pay for inferior software development.
    --"Code Complete" Microsoft Press
    1. Re:you got your backwards backwards by anarxia · · Score: 2

      Many people (including myself) purchase hardware based on linux support. If there are no decent nvidia drivers those people can always go with amd. Also a lot of systems (STBs, low power pcs etc) come with linux or android pre-installed so nvidia needs linux support to convince the OEMs to go with them. I think nvidia has more to lose than linux users if they dropped support for newer kernels or offer a sub-optimal experience..

  58. Re:And this is why by ddt · · Score: 2, Insightful

    The reason they won't go open source is that it exposes them to patent lawsuits, frivolous or otherwise.

    There will come a time when we either have reformed patent law, or we have a widely accepted binary ABI like x86 or arm7 but for GPU's, and that'll be the end of this nonsense with the closed source drivers.

  59. Re:The easier solution. by ledow · · Score: 3, Interesting

    I predict that would work about as well as denying Linux use of BitKeeper.

    All it would do is actually provide the incentive for someone to pump more work into nouveau rather than use something that "just works" but which has been taken away from them.

  60. Debugging is the reason by Anonymous Coward · · Score: 5, Informative

    The preceeding mail from Jan-2012 mentions the reason why they need to have the drivers that interact with the interface gpl-ed:

    'A bug on a driver using such low-level interface could cause side effects
    at the wrong places. In order to handle such bugs, the developers and the
    maintainers of both subsystems need to see the source code of the entire
    pipeline, with is not possible if is there any non-GPL'd driver.

    NAK

    Mauro.'

  61. Re:And this is why by fredprado · · Score: 2

    Exactly the opposite. If NVIDIA were the only GPU makers they would be able to force down our throats pretty much whatever they wished, but, because they are not, we can force GPL down their throats instead.

  62. Re:And this is why by AuMatar · · Score: 2

    I have two for them. Fuck off.

    I'll use BSD code. I respect the people who choose to write it. But I have not and never will contribute to a BSD project- if I release code as open, I want it to stay open in all its derivations. I explicitly do not want someone to ever use it without keeping their derivations open. I'll consider something like the LGPL, depending on the code, where changes to the code I wrote need to be contributed but not to code that links to it. But never a purse BSD.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  63. Re:GPL API by mar.kolya · · Score: 3, Informative

    Nvidia can go and reimplement (in a 'clean room') Linux kernel and it's APIs - nobody would have problems with that. But it seems like to much work for Nvidia. Instead it takes existing Linux environment, stuffs it with their blob and starts making money on selling chips for smartphones/tablets/etc. And it doesn't give anything back to the community. And that sounds like a violation of spirit of the GPL. And nobody asks Nvidia billions of dollars, nobody even asks Nvidia to give their chips for free. People just think it would be nice of Nvidia to open source its drivers. Drivers for products customers already payed for! It doesn't seems like to much to ask, does it?

  64. Re:And this is why by AuMatar · · Score: 2

    If they want to duplicate the functionality, that's their choice. They can then pay for doing that.

    If we end up with worse drivers because of it, that's something I'm completely willing to accept. On this issue the philosophical points far outweigh practical to me.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  65. you are missing something... by IBitOBear · · Score: 5, Interesting

    Linux developers don't care, nor shoud they, about the decision of one company to play nice or not.

    Linux kernel developers have been letting Nvidia get away with the whole "binary blob" thing for a long time. Nvidia has taken no real steps to come into conformance with the GPL requirements. They keep getting a pass for their bad citizenship.

    Eventually bad actors (Nvidia) either have to shape up, or they need to ship out.

    At the moment Nvidia is freeloading on the linux kernel. They are putting themselves in there for free. Now they are asking to break even more rules, or more accurately, to have the rules changed in the name of their personal interests. Nvidia has fouled their own bed, but now they are whining that they don't want to have to lie in the filth of their own making. They are a full grown company. They know what they _ought_ to be doing. They want a pass to have things their own way regardless.

    Sometimes you have to tell a spoilt child that they don't get the lolly this time.

    --
    Innocent people shouldn't be forced to pay for inferior software development.
    --"Code Complete" Microsoft Press
  66. Re:And this is why by aristotle-dude · · Score: 4, Insightful

    If it leads to vendor GPU drivers being developed in the open then I'm in!

    Why were you upset again?

    Because everyone was arguing that APIs are not copyrightable in the Oracle vs. Google case but somehow you think that they should be GPL? GPL is built on copyright law which means that you are saying that Oracle was right and that an API can be copyright protected.

    Don't be a hypocrite. You either believe that APIs are copyrightable which means that Google should pay Oracle or you don't. If you don't then you cannot say that they are protected by GPL.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
  67. Re:And this is why by oji-sama · · Score: 4, Interesting

    The GPL is preventing that corporate psychopath from taking what he wants with his power and instead establishes a level playing field.

    During this week I skipped using an open source component for a work project and started developing one of our own. If the project had been of supreme quality I might have created a wrapper which would have allowed us to use it in the (proprietary) project as it was GPLv2. If the component had been BSD or some other reasonable license (WTFPL is my favourite) I would have fixed the project and sent the creator the patches.

    We do have plans for releasing at least some of our stuff as open source, but I don't think it will be GPL. Then again GPL would prevent some competitors from using it, but that isn't exactly my idea of free.

    --
    It is what it is.
  68. Re:And this is why by AuMatar · · Score: 2

    Depends on what your goals are. If your goals are to be used by as many people as possible, you're right. If your goals are to promote free software, you're wrong. I disagree that its a hollow victory though- I'd call it a hollow victory if you sold out your goals and views in exchange for shinier graphics.

    I do agree that some things should be LGPLed, that's a strategic call. I'm not sure if I'd agree on this piece of code though.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  69. Re:And this is why by Kjella · · Score: 4, Insightful

    I have a feeling this is very much a "you can't eat you cake and have it too" situation... Linux has managed to badger many companies into eventually providing open source drivers for their various sound cards and network cards and raid controllers and wifi cards and whatnot. I admit, I have used the nVidia drivers quite a bit I'm glad it's not two dozen binary blobs around an open source mini-kernel, which is almost certainly what would have happened if Linux had a well defined ABI from the start. Graphics cards have by far been the hardest since they're huge drivers on top of a quickly changing and complex hardware, far exceeding anything else but they're also now almost alone in needing binary drivers.

    Intel's driver are open source as always while their performance is starting to not suck horribly, AMD's open source efforts are ongoing, even nVidia has said they'd release some tidbits of 2D specifications at least. If you're going for the quick win of give me binaries and give them to me now, why pick this specific point in Linux history? Linux on the desktop is not growing, but it's not dying either and if you include Android then it's absolutely not dying on mobile. With the latest Mesa release Intel is up to OpenGL 3.1 support (3.0 on most other cards) and that's 3.5 years behind the standard - and full Open GL ES 2.0 support. Great? No. That terrible? Also no. Linux has persisted and procrastinated against the allure of binary drivers for 20 years now, if they do it a decade more I think the last pieces will fall in place.

    And for a number of reason I still don't think it'll be YotLD, all open source drivers or not.

    --
    Live today, because you never know what tomorrow brings
  70. Re:And this is why by Richard_at_work · · Score: 3, Insightful

    Your argument is a bit off - this isn't about Nvidia wanting to use "Free software" in their "closed source programmes", it's about Nvidia wanting to use an advertised feature of the Linux kernel platform to enhance performance *on Linux*. Nvidia already have access to similar functionality on Windows and OSX (or will soon) - they won't be taking anything from Linux to Windows or OSX if they used the feature Linux advertises.

    All this is doing is hurting ongoing performance on Linux, and people are trying to blame Nvidia because of it.

  71. Re:And this is why BSD will thrive! by h4rr4r · · Score: 2

    Is has not yet thrived and for this reason will not thrive in the future.

    People are glad to take, but they never give unless forced.

  72. Re:And this is why by PeterBrett · · Score: 5, Informative

    I thought Oracle v. Google said APIs weren't copyrightable. As such, GPL-only APIs make no sense because the API can't be copyrighted to begin with.

    You're wrong.

    It is fine for someone to go and make a new, compatible implementation of the DMA-BUF API, with the same calling conventions etc., and license it however they wish. That is what the Oracle vs Google judgement said.

    It is not okay to link your code into the GPL version of the DMA-BUF API unless your code is also GPL'd. That is something different.

  73. Re:And this is why by peppepz · · Score: 2

    Bullshit. It's NVIDIA who sent a patch to the Linux developers asking them to change the license of their work because they're not willing to change the license of their own.

  74. Re:NVidia GPL kernel module by gtirloni · · Score: 2

    Wouldn't that be a clear attempt to circunvent the license? Intent matters.

    --
    none
  75. Re:hearts and minds by PeterBrett · · Score: 3, Insightful

    "Please comply with the very permissive licence that we chose to licence our code under" does not amount to a religious argument.

  76. Re:And this is why by Serious+Callers+Only · · Score: 3, Insightful

    The one who tries to insist all code in the world should use their preferred license.

  77. Re:And this is why by aristotle-dude · · Score: 2

    Sadly not :)

    GPL infringement happens when you have a non-GPL compat app accessing memory of another -- which is why linking dynamically against GPL is no-go (needs LGPL). Passing data-structures is historically a problematic area.

    Sadly, that probably means that the GPL is incompatible with copyright law in a number of jurisdictions. I look forward to seeing a company like NVIDA challenge the GPL in court for the good of us all. Tyranny is never a good thing regardless of who the tyrant is or whether you agree with their aims.

    This viral nature has never sit right with a lot of people. No license can extinguish the copyright of another.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
  78. Re:And this is why by ByteSlicer · · Score: 3, Insightful

    APIs GPL only? Seriously guys, WHAT THE FUCK?

    That's not what's happening at all.
    The basic fact is: the Linux kernel sources are GPL licensed. This was an early decision by Linus, and no amount of wishing will change that. There are just to many contributors that would have to approve a re-license.

    Now, the GPL is very clear regarding derived work: if you distribute such a work, it needs to have a GPL-compatible license and provide sources.

    What constitutes a derived work for a kernel? Basically, calling any code from the kernel would create a derived work, so the Linux license contains exemptions for user space code that calls the kernel through the public interface.
    However, in this case the nVidia driver would call an internal kernel function, that is not exempted, so this would create a GPL derived work. The function is so low level that it would create an intimate bond between the Linux kernel and the nVidia binary driver.

    Even if the Linux maintainers would allow this, anyone that wrote any part of Linux could start a court case against nVidia for breach of license. Would that be a better outcome?

  79. Re:So? by Nikker · · Score: 2

    I have a sincere question about proprietary code.

    If the concepts underlying the code are indeed patentended then is the copying of said code not protected by the governing countries laws? If I had patended a really cool/advanced algorythm then by showing it's implimentation how am I hurting my 'invention'? I was of the understanding that by recieving a patent for an invention I was able to show everyone how I did it because I was protected by law from anyone implimenting it for a period of time with out my explicit permission.

    So I guess tl;dr if someone got their hands on Nvidia's/ATI's driver code and showed the world how would that effect patents and/or intellectual property rights?

    --
    A loop, by its nature, continues. If that didn't make sense, start reading this sentence again.
  80. Re:And this is why by Artraze · · Score: 2

    No, even... hell, _especially_ if your goals are to promote free software this is bad, and that's exactly my point. Nvidia will not open their source because of this. Free software spread? In the best case no. And in reality, Nvidia's drivers aren't what they could be so Linux continues to have crappier than necessary drivers which either are slower than they need to be or have a nasty hacked version of this. Does that help spread free software? I'd say not. Bad drivers are one of the big issues people have with Linux.

    Now, if there were good GPL drivers and this would be their selling point, I'd agree: you could spur adoption of open source by restricting the API to the free version and letting Nvidia play catch-up. But that is simply not the case. All this does is artificially make the graphics situation on Linux worse, and that does absolutely nothing to help spread free software.

  81. Re:And this is why by diegocg · · Score: 4, Insightful

    Right, because promoting open source GPL-compatible drivers didn't work for Linux.

    Oh, wait, it worked. The Linux hardware support is overall quite good (with many hardware manufacturers working with upstream to contribute drivers). In fact, Nvidia is a minority - Intel has the biggest market share in graphic chips (avobe 50%), AMD/ATI is second. Both have contributed open source drivers which are getting better and better.

  82. Re:And this is why by clarkn0va · · Score: 2

    Who said anything about Apple?

    --
    I am literally 3000 tokens away from the chaotic crossbow --Stephen
  83. Please don't mix things by tizan · · Score: 2

    0) People chose GPL v2 for the kernel for very good reasons and the sheer success of it from phones to all Top 500 clusters is proof ..nuf said on that.
    1) You can use LGPL if you want to release code that is GPL but allow people to link with proprietary blob but without forbidding users to see and modify the LGPL code.
    2) Linux kernel is GPL V2.0 licensed not LGPL...so if you want to bind to it and release the binary then you have to release the code under GPL V2 of your stuff that is calling the kernel stuff...you don't need to contact any body if you abide by this
    3) You can request all the copyright holders in the kernel code to release that bit of the code to you under another license if you do not like GPL.

  84. Re:And this is why by QuantumRiff · · Score: 3, Funny

    So, you (and Alan Cox) can be complete dicks about this and hold the Linux desktop and Linux embedded devices with decent drivers back for years because nobody bothers to support such a tiny market with open source drivers, or you can allow proprietary graphics card manufacturers to keep their hold on graphics drivers for a few years and keep the vast majority of users happy because they have a device that works well enough (even though it doesn't have open source graphics drivers) UNTIL the community develops open source drivers themselves.

    So then Valve must be a bunch of Idiots.. http://games.slashdot.org/story/12/08/31/1551230/valve-finds-open-source-drivers-to-be-great Apparently, those dumb-asses seem to think that having access to the drivers makes it easier to find bottlenecks, performance issues, etc, and to improve the drivers at the same time. In fact, their Blog mentions this several times. If only they just understood the closed source model..

    --

    What are we going to do tonight Brain?
  85. Re:And this is why by Svartalf · · Score: 4, Insightful

    Heh... There's other uses for a GPU and they're not graphics.

    Ever wondered why AMD opened up most of their programming info? Stop and contemplate why they did that and offer off-and-on assistance in the FOSS driver stack at their expense. It's not because of them being altruistic. It's not because they see more than a nascent market for games.

    It's because of the same thing you pointed out. That 10G card is important to supercompute clusters. So's the GPU. I honestly wish people would step back and quit thinking with the blinders you just espoused just now.

    --
    I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  86. Re:The infection of GPL stunts growth... by mar.kolya · · Score: 2

    Nvidia is creating Linux driver not because of good will, but because Linux gives Nvidia access to very fast growing market. And yes, Nvidia will notice if this market won't be accessible. Everybody else on that market will be just happy without Nvidia. In short: Nvidia needs good Linux driver more then Linux needs Nvidia at all.

  87. Re:This is why I suggest BSD by aristotle-dude · · Score: 2

    If this were BSD, Alan Cox would have had his hard work stolen from him against his will, and he wouldn't have been able to do anything about it. Nvidia could have taken his code and released it in their binary blobs, and he'd never see any benefit from it again.

    So why is that a reason for him to go BSD instead of GPL?

    How can something be stolen if it is being given away? The whole point of BSD is that you are "free" to use what is being offered for "free" and you are "free" to contribute back into the community code base to make the product better for everyone else. Through that collaboration you can end up with a better product but everyone is always "free" to take that product of the collaboration and run with it to create something unique.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
  88. Re:And this is why by Guy+Harris · · Score: 3, Informative

    Because everyone was arguing that APIs are not copyrightable in the Oracle vs. Google case but somehow you think that they should be GPL?

    If Nvidia were able to produce a non-GPL kernel module that implemented that API, they could use it. It's the in-kernel implementation that's GPLed and that only GPLed code can use.

    GPL is built on copyright law which means that you are saying that Oracle was right and that an API can be copyright protected.

    In this case, it's an implementation, not an API.

  89. Hmmm by AdmV0rl0n · · Score: 5, Insightful

    I've never really understood so much of the background on this. I really don't. Nvidia are probably *the only* fucking company that really went the whole way and really release the right 'kind of ' full drivers for Linux. Yes, they are closed source binary. Yes, they are proprietry. Yes, they don't comply with religious level political idealogy. But they contribute in a less than optimal way to your platform.

    And your platform, at least in the short and medium term would be vastly shittier without their efforts.

    So, next you publicly go viral dropping a bucket of shit over them. Their response has been moderatly to try to come in and talk, make changes and be more of a interactive unit with you. I bet that the devs inside the company are probably very pro making progress but face real world limits of legal and other things that they themselves are not empowered to fundamentally change.

    I'm not surprised at Alan's answer - but here is my raw take on this. What would have been the better way forward was to take their request and frame it globally to that group of people and put Nvidia's request forward. I appreciate that many would likely answer no, and I appreciate this would perhaps not be what Nvidia wanted, but it would have opened a bridge for interaction and perhaps longer term bridge building. Instead, they get a fuck you, fuck your company, and do this our way or the highway.; What were Nvidia trying to do? Provide an answer to the problem they had a bucket of shit thrown over them in public about. ie - trying to solve a problem they were abused about.

    The benefit of doing this is fixing something in linux - albeit with a closed driver that people asked for. Linux users asked for this. Linux Kernal people bitched about it. Linux coders refusing to help provide this moves this off being a purely Nvidia are a bunch of fucks to shooting your own platform in both feet.

    I don't fucking get it. These bits of code I presume are already fully in Linux. Sat there in daylight .Refusing to let Nvidia use them to help you do something_you_asked for is demented. Or rather - let me reframe that - Its really lame to not engage in a process to find a way forward instead of ramming the ideology down the throat of a vendor who is a closed source bunch - but have come to try and engage with you on a problem.

    Let me put it more plainly. Linux needs Nvidia more than Nvidia needs linux - but together you make something that is symbiotic. You think your mythical Ubuintu tablets are going to surface on the very proprietry ARM platform by not getting down and working with people like Nvidia on problems. Linux won't run 'well' on their platform without their help. You want to be there? Take your heads out of your asses.

    As much as Linux gets hobbled by closed source folks not playing the game, its just as hobbled by killing off their interactions and opportunities by being too hard headed about the religio-political idealogy.

    And a fucking note to the Intel GPU Linux fanboys. The drivers have almost always been shit. And the hardware is low end garbage. I'll take a Linux box with Nvidia GPU *EVERY fucking time over intel gfx. Every time.

    --
    We`re all equal .. Just some of us are less equal than others.
  90. Re:And this is why by Omnifarious · · Score: 2

    I would rather know exactly what software my hardware is running that having it run secret software that does who knows what. I don't particularly care how 'incredibly useful' that software proclaims to be. If the creators won't open it up to me, it almost certainly serves their interests over my own and is a tool to enslave me.

  91. Re:And this is why by cyber-vandal · · Score: 2

    How tyrannical that people who write code want a say in how it's used. The bastards!

  92. Re:This is why I suggest BSD by Omnifarious · · Score: 3, Informative

    My freedoms all come with a 'but'. I can swing my fists all I want, but not if I hit someone. I can own anything I want, but not other people. I consider the BSD license less free because it allows others to infringe on people's freedom. I avoid BSD licensed code as much as is feasible for this reason. In the long run it is poisonous to my freedom even if it provides no obstacles in the short-term.

  93. Re:And this is why by F.Ultra · · Score: 3, Insightful

    But this is not about the API, it's about linking your code with GPL licensed parts of the Linux kernel. This is nothing like Oracle vs Google.

  94. Re:The infection of GPL stunts growth... by mindmaster064 · · Score: 2

    Nvidia doesn't need Linux or to make drivers for it at all. The top two environments are OSX and Windows and it can ignore Linux completely if it must leaving you with some shitty integrated video adapters. Between negotiating terms or heavily modifying the driver to fit the GPL taint (probably removing functionality) and whatever else it may simply ignore the new functionality since while advantageous it wouldn't effect the position of NVidia at the top of the video heap and most of the cards that would take advantage can't compete with Nvidia anyway. The bug is really in how Linux is licensed not in what NVidia is doing, but there is nothing stopping Nvidia from taking linux sources removing all of the bits it doesn't like and licensing the changes with the library exception and plugging its kernel module into that effectively creating their own branch over which GPL cronies have no say over since this is all GCC has really done by creating the standard library. As long as Nvidia plugs into these 'changed' hooks and not the originals everything still works.

  95. What sort of damages? by Anonymous Coward · · Score: 2, Funny

    Well, JUST IN THE USA, that would be $150,000 (times three for wilful infringement) for copyright infringement FOR EACH COPY MADE.

    Alan could download 10,000 copies of the driver from the NVidia site and buy himself an Island!

  96. Re:And this is why by vux984 · · Score: 2

    Yeah, it would probably end up being something that's better and more usable than Linux.

    It would probably end up being like OSX. Which is fine, but it belongs to Apple not the community that built BSD.

  97. Re:So? by atriusofbricia · · Score: 2

    Why does that matter? All that matters is that I have a perfectly usable set of computers that do what I want. I don't care if dear old gran or my neighbor uses it. I hope they would for their own benefit, but I don't care if they don't.

    If what you're doing with it only includes things that do not require broad support, congrats. If on the other hand you'd like to still play games on a PC and not have to reboot to Windows, this stance is in fact one of the things that relegate us Linux users to second or third class status.

    It is a legitmate question as to why Nvidia doesn't open source the drivers or write new open source ones. The most logical thing is the chicken and egg problem of there being no money in it because there are no users, and no users because there isn't enough support.

    We have awesome desktop environments, the same browsers (or better) as every other OS, and generally the same hardware support. This is the one last thing that always results in a "nope".

    "Can I play games on it?"

    "Only if you want to play ancient games over a decade old, or humble bundle games."

    "So, nothing made in the last 10 years?"

    "Want to fiddle with WINE?"

    "Nope."

    End of discussion.

    --
    I was raised on the command line, bitch

    "Nemo me impune lacesset"

  98. Re:hearts and minds by LaughingRadish · · Score: 4, Insightful

    Can you guess how I know you've never worked in a non-Windows shop?

  99. Re:And this is why by WaffleMonster · · Score: 2

    No, this is why it's GOOD, and why many developers, myself included, will not work on non-GPL projects.

    Most contributors to the linux kernel are paid by their bosses to make these contributions.

    As a commercial developer GPL means I won't look or touch a GPL 'API' project let alone contribute anything to it because when I reference it all of my propritary shit gets sucked into GPLs uselessly vauge definition of derivative work. For godsakes I have every incentive in the world to send in my patches so I don't have to deal with maintaing deltas.

    I have seen LGPL projects spring up and surpass in popularity functionality of GPL analouge it replaced. There does not seem to be any lack of users willing to contribute LGPL code back into these projects.

    I have seen LGPL maintainers go through great pains to keep GPL tainted code out of the project... seems like an extraordinary waste of talent and resources to have these crappy disputes because a few purists refuse to acknowledge reality that industry is footing the bill for most of our open source code.

  100. Re:And this is why by exomondo · · Score: 2

    Say this again when NVIDIA GPUs stop being picked for android mobile devices...

    You are aware this features is about copying data between framebuffers of multiple GPUs? This isn't going to stop nVidia being chosen for android mobile devices.

  101. Re:And this is why by steelfood · · Score: 2

    It has dawned on me over the years of reading slashdot and following the community that GPL enthusiasts are rarely competent at business. And for those who are wondering, this is primarily why the year of Linux on the desktop has never happened, and is never going to happen.

    There's a reason most successful tech companies are the ones who follow standards, whereas the companies that implement proprietary solutions have died off or been marginalized. Companies don't follow standards necessarily for the the Microsoft reason of Embrace Extend Extinguish. They do it because they know it will help the adpotion of their product (the degree of help varies). They do it knowing full well that standardizing goes both ways: it can win them customers from a competitor who's also standardized, or they can shed customers for the same reason. But they know that if they don't standardize, they wouldn't have even a chance at those customers, irrespective of the quality of the rest of their product (Microsoft is an outlier due to it being a monopoly).

    And they know that standards are not determined by ideology or by license agreements. Standards are determined by usage. ISO certification doesn't make a standard a standard. Critical mass does (if anything, ISO just formalizes and cements it). GPL people don't seem to get this. They don't seem to understand that if you put out a method that you want standardized, cherry-picking the players who get to implement or dictating how it is implemented is the fastest way to irrelevance.

    And they don't seem to understand that businesses are incredibly risk-adverse. Even talking about lawsuits, whether there's any actual standing, will be enough to discourage a business from adopting something, especially something not even close to having that critical mass.

    That, and if this is just an API or headers, then it's not copyrightable, with precedent being set by Oracle vs. Google. And a copyright license therefore is inapplicable (or did everyone forget that GPL is enforced via copyrights). Not that it matters. Nvidia and others will just build their own proprietary interface and standardize that via the usual way, through a committee and RAND agreements with other fellow members. It's not like someone has a patent on the actual method.

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
  102. not quite that simple by Chirs · · Score: 4, Informative

    The current Nvidia binary blob resides in a bit of a grey area. They have a binary blob that was originally written without looking at the linux specs, and is not a derivative work of the kernel.

    They then have an open-source "shim" that is clearly a derivative work of the kernel that allows the binary blob (which has its own API) to interface with the kernel (which has a different API).

    The GPL says that any derivative work must be released under the GPL. Normally (as a logic shortcut) this means anything linked against the kernel, however in this case there is a real argument that the binary blob is NOT in fact a derivative work.

    However, now we have a new funky feature being added to the kernel. If the binary blob is updated to make use of it, then there is a reasonable argument that it now actually IS a derivative work of the kernel and thus should be released under the GPL.

  103. A good step in the right direction by jcdr · · Score: 5, Insightful

    The GPU is no anymore a peripheral device, it's more and more integrated on the same die as the CPU. Intel, AMD or ARM have plans to lowering the difference even more on how GPU and CPU will exchange data and will view the rest of the system. Basically, the CPU cores and GPU cores will share the same location into the architecture. This move is not so different from the integration of the FPU core into the CPU that have existed back to the 80486/68040 days. About ten years before the FPU integration, the FPU chips was a lucrative business: this part was so expensive that it was an option that only a few can buy. Not anymore, FPU less CPU are now only found in the lower part of the ARM embedded market. There is no x86_64 chip without FPU by the design of the instruction set. GPU is the next core to get the same integration.

    What this means ?

    First, since Nvidia don't own a licence to build x86_64 chip, the game is actually already over for them. There known that since the failed merge talk with AMD and explain why there focus on the high end and ARM chips since this time. This also explain why Linus Torvalds "fuck you Nvidia" response was focused on the Tegra ARM SoC despite the fact that the original question was about a x86_64 laptop.

    Secondly, Intel and AMD known that sooner or later, the GPU core will be so integrated with the CPU core that there cannot be managed anymore by only a driver to do in a efficient way there new roles aside of the graphic display. The trigger point will probably be when the GPU will passe on the CPU side of the MMU (or something that look like this). At this stage the paging management for the GPU will be almost impracticable from within a driver to cooperate efficiently with the core operating system, not counting the brainfuck crap in case there are not developed by closely related peoples. This don't automatically say that GPU driver will cease to exist for some graphic aspect, but the GPUCPU part will end up into the kernel for the most critical aspects. It's easy to see why on Linux, access to the GPU from a proprietary driver is really not an option for the future (even if the current issue is only about DMA sharing data between devices).

  104. Re:they both suck for Linux based appliances by RCL · · Score: 2

    "The pressure to use a particular version of the kernel" comes from the fact that kernel doesn't have stable binary interface for drivers, so you have to upgrade the entire kernel to get some new hardware supported. If kernel had such an interface, there would be no pressure, and both GPL'd and proprietary drivers could co-exist.

    However, it is unlikely for kernel to have one, because as long as it remains binary unstable there's an incentive to release drivers as open source. With stable driver API most drivers would be shipped as binaries and kernel developers would need to devote significant effort to make user's life simpler erm... to remain backward compatible. And they don't want that, because that would have turned kernel development into a real work, and work is hard (like developing commercial proprietary software is), while all they want is just to have fun.

    As someone said: people paint for free. People tend not to clean up toilets for free. With Linux you have a community of painters who don't want to "bend over sideways for a paranoid corporation" that wants to supply a proprietary toi-toi, lest they lose the ability to shit everywhere.

  105. Re:And this is why by PlusFiveTroll · · Score: 4, Informative

    The GPL doesn't prevent your competitor from using it. It prevents your competitor from taking it, improving it, and using it directly against you. In the GPL he has to release the improvements back to the community. The entire 'community' benefits in the end because of the code you released.

    With the BSD license, the competitor takes your code, makes it better then charges you to use the improved features. Granted there are a lot of cases where BSD code is good, but long term open computing platforms are not one of them.

    In every case a freedom has a set of associated costs. If you use 'free' software to reduce business costs, there is going to be a cost when it comes to selling the software. It seems an odd position that you want the code to be 'free' as in no rules so you can sell it and be protected by IP, copyright, and trademark rules.

  106. Re:And this is why by fredprado · · Score: 2

    Linux is the kernel for all Android devices, which is a huge market at the moment.

  107. Re:It would still become a derived work of the ker by Trogre · · Score: 3, Insightful

    If we're calling licences such as the GPL "viral" then we should refer to proprietary closed-source licences as "dead-end".

    --
    "Nine times out of ten, starting a fire is not the best way to solve the problem." - my wife
  108. Re:So? by Panaflex · · Score: 2

    The patent system is broken. Those who strive for new ideas and create new designs never seen before are far overshadowed by people patenting variations on blinking cursors, linked lists and sorting algorithms.

    The patent system has congressional oversight - which is broken also. The patent system is abused by large corporations who push through hundreds of patents a year knowing that not all of them are truly unique.

    --
    I said no... but I missed and it came out yes.
  109. Re:It would still become a derived work of the ker by MightyYar · · Score: 2

    Well, it's a crazy made-up IP law hack, so it's not going to have a perfect real-world analogy. A virus as an analogy is as good and as bad as any. The point is that it will infect your code, and it can be difficult to avoid. That serves MS marketing quite well. On the other hand, they would probably not use the analogy of their own software being like a blood-sucking parasite or a tax - yet both are pretty good analogies.

    --
    W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  110. Re:So? by MightyYar · · Score: 2

    Now I have to admit that I have been playing Minecraft lately... but honestly, gaming is not a reason that I have a computer.

    --
    W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  111. Re:And this is why by Microlith · · Score: 2

    The code behind them is protected, and as a kernel module you are derivative work of the code behind those APIs. Trying to suggest that the APIs (that is to say, the prototypes, which is what Oracle tried to claim) themselves are being claimed is ridiculous.

    But this is just another anti-GPL, anti-Linux attack to try and skew things in favor of uncooperative closed source vendors.

  112. Re:So? by peppepz · · Score: 2

    Even if it is true that NVIDIA is just in it for the money, I think capitalism works the same way.

    And that is exactly what the GGP was saying. Open source is no capitalism. Which is not to say that capitalism is bad. It's just that open source works differently and Linux is open source.

    Why did he suddenly become pist? Because they decided to roll their own infrastructure code - due to the fact that they couldn't use the gpl version.

    ...which in turn is due to the fact that they don't want to share a thing, as the GGP was saying. Which is completely different from the picture of NVIDIA that you were painting with the figures for the ARM kernel.

    So, Linus is pissed because NVIDIA didn't do what he wanted, not because they do a bad job. He's pissed because they don't contribute or integrate into standard Linux DRI drivers.

    He's pissed because if you don't integrate, the resulting operating system is a mess to develop, debug and maintain. Not to mention, that it's much worse for end users.

    But they did exactly what they had to do in order to maintain their non-derivative status.

    Which is an elaborate way of saying:
    they did exactly what they wanted to do, in order not to share code like everyone else on the desktop (ATI, Intel) is doing.

    I know how this goes.

    I don't doubt that, but why are you throwing patents into the discussion, when patent protection is independent from the open source status of the code, as patents by definition must be disclosed?

  113. Re:And this is why by Jah-Wren+Ryel · · Score: 3, Insightful

    The reason they won't go open source is that it exposes them to patent lawsuits, frivolous or otherwise.

    I've been hearing that for probably a decade. I used to believe it, I don't any more. The reason for my change is that AMD/ATI and Intel don't seem to have had any significant problems in that regard with their open source gpu drivers.

    So, either Nvidia explicitly knows they are violating some patents (and haven't don't anything about it for ~10 years) in which case they are deliberately sitting on a ticking time bomb anyway, or it is just misdirection.

    --
    When information is power, privacy is freedom.
  114. Here's an idea by viperidaenz · · Score: 2

    What if I produce GPL code that exposes effectively the same API as the kernel, and the implementation of that API directly calls the kernel. Is that legal?

    What if I was to then release the same code (or just the header files the define the new API) under a different license?

  115. Re:It would still become a derived work of the ker by mrchaotica · · Score: 4, Insightful

    You may argue that the GPL is the big dog in FOSS, but looking around at the various large FOSS projects out there, Linux is the only major GPL'ed software.

    So you've never heard of GCC, or the GNU userland utilities that most Linuxes and BSDs (including OS X) use, or the Busybox userland utilities that all the rest of the (embedded, etc.) Linuxes use? All that's GPL, and (IMHO) more important than the Linux kernel (even though I'm not one of those folks who cares about calling it "GNU/Linux").

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  116. Re:This is why I suggest BSD by mrchaotica · · Score: 2

    Yeah, he would never see any benefit from it [if Linux were BSD-licensed]. Except the fact that it would make the whole Linux system more viable, thus attracting more users, thus bringing in more people who don't have the sub-licensing issues that nvidia does and may choose to contribute.

    Of course it would make the whole system more viable, which is why my smartphone runs BSD! Oh, wait...

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  117. Re:And this is why by ByteSlicer · · Score: 2

    If the above was even one bit true, non-GPL modules would have been completely forbidden from loading in the kernel at all.

    Nothing I said was contrary to what you said.

    The derived work of the GPL kernel and non-GPL NVidia module is produced when the module is loaded. This is when the linking of both happens. It is very important to note this, because the "calling" thing you are using is just red-herring.

    The whole purpose of linking a module is to enable calling code from that module. So I implied that.

    This derived work is allowed because it is done by the user of the system. The result never leaves the memory of the user's system, so it is never distributed. GPL explicitly allows the user to do anything, as long as it doesn't involve distributing the result.
    It also means that GPL kernel + non-GPL-nvidia cannot be distributed together.

    If you take a look of the code that compiles the NVidia module for your kernel, you will notice that the code does not contain any GPL code in itself. It may require some kernel headers and config files, but these have been established to not be copyrightable (and thus no need of license for them).

    Like I said: if you distribute such a (derivative) work, it needs to have a GPL-compatible license and provide sources.
    Just using the code has never been seen as distribution, so I didn't mention that.

    The problem is that some kernel developers have implemented DRM system, that artificially limits the user in what he can do with his system. If he tries to compile a module that is not under GPL license, a selected number of functions would cause the build to fail. The freedom of the user is artificially taken away. Well, thanks to the GPL the user can hack the kernel and remove the marks of these function, however this is procedure that takes time and effort that are basically wasted.

    This is besides the point. The compilation checks are just there so people don't accidentally create derived works by calling internal kernel code (non-public interfaces). It would be trivial to disable those checks, but that wouldn't make it suddenly OK to call the internal kernel code, from a legal point of view.

    This is what NVidia wants removed. These functions are not special in any legal way. All kernel functions called by any module are covered under GPL, because the whole kernel (including the files from BSD) is GPL.

    This is incorrect. The Linux kernel is GPL, but has exemptions for calling functions/syscalls that are part of the public interface (otherwise all Linux apps would have to be GPLv2). Binary-only drivers that call non-public code are only allowed so long as they are not distributed with the kernel.

    There is a legal grey area regarding whether or not dynamic linking GPL code constitutes a derivative work (FSF thinks it does). It would have to be decided by court, but using these internal kernel functions would likely be seen as creating a derivative work, regardless of any compile checks.

  118. DMA-BUF with no proprietary drivers is pointless! by Blaskowicz · · Score: 3, Interesting

    Face it, the only reason for DMA-BUF at all is to use multiple GPUs, some better than others. It will typically be an Optimus laptop with Intel + Nvidia, or maybe AMD APU + AMD GPU. But without proprietary drivers the bigger GPU is entirely pointless! Say you have an Intel IGP plus a nvidia GPU, if you use nouveau on the nvidia GPU then you lose so much performance and battery life it's useless and you're better off disabling it and staying on Intel. Unless you like wasting your money for a minor improvment with terrible inefficiency.

    So, linux is really jumping the shark, I guess what's left is distros should switch to BSD just like debian/kFreebSD, starting with Mint. Unless this terrible situation is resolved.

  119. To be honest, DMA-BUF is expensive by Anonymous Coward · · Score: 2, Interesting

    It requires crossing the user/kernel boundary multiple times, which is an expensive proposition.

    One of the reasons Apples drivers and Windows drivers tend to be faster than Linux drivers is they live in kernel space; in both cases, it's mostly so they have an API to push pages out when they've done a calculations which they end up not using.

    Copying to kernel space in the graphics pipeline, followed by copying back to user space to do the compositing, and the copying back down to kernel space to get it in the frame buffer so it can be displayed is a lot more expensive than it actually needs to be.

    Forcing the driver out into user space is the "punishment" that's exacted because they don't GPL their driver, which as other people have correctly noted, they really can't because of cross-licensing agreements, patent violations which are hidden in code and protected by EULA from reverse engineering to discover the violations, and licensing for things like H.264 and the rest of the Sorensen CODECs.

  120. Re:And this is why by Anonymous Coward · · Score: 3, Informative

    >>hiring external companies and providing some docs for the Free drivers, all the while putting their main development effort into their proprietary FGLRX driver

    That's not actually correct. We hired two full time devs to work on the open source drivers over five years ago, added two more last year, and another (total 5) this year.

  121. Re:And this is why by AJWM · · Score: 2

    This reminds me of the old remark about Unix (and Linux) being very user friendly, it's just picky about who its friends are.

    The nice thing about not being beholden to commercial interests -- as open source isn't -- is that it doesn't have to compromise to make the lowest common denominator happy.

    Ubuntu is hardly the only distro out there.

    (Personally I don't give much of a rat's ass about computer games; when it comes down it they're all about playing against a programmer who is actually no longer playing, and a random number generator. Cheap thrills. For my other 3D needs I have a Radeon card.)

    --
    -- Alastair