Announcement

Collapse
No announcement yet.

Steam Machines Prototypes: Intel CPU, NVIDIA GPU

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #81
    Originally posted by pingufunkybeat View Post
    I understand this position, I'm just telling you that it's not the only position out there.

    Here, for example, is what Linus Torvalds has to say about GPL and kernel drivers:




    Alan Cox is even more strict on this, IIRC.
    Yes, and Torvalds has also said that kernel module are "derivative by default" and:

    Originally posted by Linus Torvalds
    And in fact, when it comes to modules, the GPL issue is exactly the same.
    The kernel _is_ GPL. No ifs, buts and maybe's about it. As a result,
    anything that is a derived work has to be GPL'd. It's that simple.

    Now, the "derived work" issue in copyright law is the only thing that
    leads to any gray areas. There are areas that are not gray at all: user
    space is clearly not a derived work, while kernel patches clearly _are_
    derived works.

    But one gray area in particular is something like a driver that was
    originally written for another operating system (ie clearly not a derived
    work of Linux in origin). At exactly what point does it become a derived
    work of the kernel (and thus fall under the GPL)?

    THAT is a gray area, and _that_ is the area where I personally believe
    that some modules may be considered to not be derived works simply because
    they weren't designed for Linux and don't depend on any special Linux
    behaviour
    .

    Basically:
    - anything that was written with Linux in mind (whether it then _also_
    works on other operating systems or not) is clearly partially a derived
    work.
    - anything that has knowledge of and plays with fundamental internal
    Linux behaviour is clearly a derived work. If you need to muck around
    with core code, you're derived, no question about it.
    So to be free of the GPL a module has to be "not designed for Linux and don't depend on any special Linux behaviour". I think it would be hard to write any kind of complex driver that doesn't depend on any special Linux behaviour. Also a driver must be GPL if it "was written with Linux in mind" - this is an issue that I think is going to eventually end up in court. At the moment we have some companies releasing closed source drivers that were specifically written for Linux. By which I mean, the driver isn't a Windows or Unix binary driver talking directly to hardware with an open source wrapper, but one that was written specifically for Linux (afaik many Android drivers are written "for Android" - they have no corresponding driver for any other OS). And due to the "multiple copyright ownership" of the Linux kernel, anyone who has ever contributed to the Linux kernel can sue one of these companies. If a company has a closed source Linux kernel driver, and no driver for any other operating system, that it is likely that they would lose a court case. And if, during discovery, an expert was allowed to analyse their source code and show that the Windows drivers and Linux drivers were substantially different, then they will also lose.

    Also Greg Kroah-Hartman:
    Originally posted by Greg Kroah-Hartman
    "Closed source kernel modules are illegal"

    That's it, it is very simple. I've had the misfortune of talking to a lot of different IP lawyers over the years about this topic, and every one that I've talked to all agree that there is no way that anyone can create a Linux kernel module, today, that can be closed source. It just violates the GPL due to fun things like derivative works and linking and other stuff. Again, it's very simple.

    Now no lawyer will ever come out in public and say this, as lawyer really aren't allowed to make public statements like this at all. But if you hire one, and talk to them in the client/lawyer setting, they will advise you of this issue.
    Given how risk averse many companies are, it's amazing that they seem to open themselves to the potential of being sued by releasing closed source drivers.

    Comment


    • #82
      Originally posted by pingufunkybeat View Post
      You are very much missing the point. The GPL does not mention linking at all, it mentions "derivative works" and there is discussion about what makes something a derivative work.

      It is possible to distribute GPL and proprietary software together, true. As long as the proprietary software is not a derivative work of the GPL software and you distribute a combination of the two, in which case you are breaking the GPL.

      The question is whether binary drivers like Nvidia's actually break the GPL. You are right, there is the GPL-shim workaround, but many kernel hackers question it's legality and claim that the Nvidia binary driver is in fact a derivative work of the kernel, because it cannot function without it. It's not a black-and-white thing, it's very much a grey zone and there is no consensus. The assertion that a Linux kernel module which does not function in any way without a working GPL-ed Linux kernel is not "derivative work" is somewhat questionable in the eyes of many.

      So what happens is that distributions do not distribute the blob (risking a GPL lawsuit), but let their users download it and install it themselves. If a user downloads and combines GPL and non-GPL software on their own, there is no violation.
      From GPL 2.0, the predominant license of the Kernel: "The 'Program', below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language." My emphasis added.

      It doesn't need to say the word linking explicitly as it is implied, because when you link to libraries you essentially make them a part of your program by including a portion or the whole of that program and the GPL or compatible licenses have to cover your entire program. I mentioned that binary blob drivers aren't linked to show that they are not a part of the kernel in any way, shape or form. They are discrete pieces of software that can interact with one another in a way similar to plug-ins as modules can be loaded or unloaded while the kernel is still running.

      The most important line of the license in this matter is as follows: "Activities other than copying, distribution and modification are not covered by this License; they are outside its scope." Stated plainly: if a binary blob doesn't copy or modify the GPL covered kernel code then it is not bound by the GPL itself, period. As to distribution, that would be down to Valve or any other distro having to comply with the requirements to make the source available for any GPL covered works they provide.

      This is a very clear cut case, the only time it seems ambiguous is when you have FUD-spewing FOSS zealots involved.

      Comment


      • #83
        Originally posted by IanS View Post
        Stated plainly: if a binary blob doesn't copy or modify the GPL covered kernel code then it is not bound by the GPL itself, period.

        This is a very clear cut case, the only time it seems ambiguous is when you have FUD-spewing FOSS zealots involved.
        You're wrong, and calling people like Linus Torvalds and Greg Kroah-Hartman "FUD-spewing FOSS zealots" is rude and unnecessary.

        Comment


        • #84
          Originally posted by Gps4l View Post
          I bought the game Serious Sam 3 on Linux.

          Its only since a month or 3, this games runs good on Linux, and that is with the catalyst driver, which outperforms the opensource driver allot.
          Before I had to lower the resolution on linux, to have a playable frame rate.
          Sweet, SS3 had crap performance several months ago when I picked it up, I was having similar issues with the game and my AMD card, which is why I have yet to get around to playing the whole game. Glad to hear it is in a better state now, whether it's because of game updates, driver updates or both. I'll have to give it another go soon.

          Comment


          • #85
            Originally posted by IanS View Post
            From GPL 2.0, the predominant license of the Kernel: "The 'Program', below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language."
            My emphasis added.

            It's not GPL that defines what a "derivative work" is (or they could claim outlandish things), but it is the copyright law that defines it. Or rather, a court would decide this in the case of a lawsuit. Opinions among Open Source hackers vary.

            Nobody really knows which way it would go. It's not clear-cut at all that a linux kernel module designed with Linux in mind, and which requires a GPL shim to operate, is not derived work.

            It doesn't need to say the word linking explicitly as it is implied, because when you link to libraries you essentially make them a part of your program by including a portion or the whole of that program and the GPL or compatible licenses have to cover your entire program. I mentioned that binary blob drivers aren't linked to show that they are not a part of the kernel in any way, shape or form. They are discrete pieces of software that can interact with one another in a way similar to plug-ins as modules can be loaded or unloaded while the kernel is still running.
            Wait a minute here.

            If you load a kernel module into a running kernel, then it's not a part of the kernel in any way, shape or form? The part of the kernel which runs in kernel space is not a part of the kernel if you load it into the kernel space separately? What on Earth are you talking about?

            When you load a closed-source blob module into the kernel, you are obviously running a combined piece of software, which needs each other to function. You can't run the blob outside the kernel, it requires a Linux kernel to run.

            The main question is whether using kernel module interfaces constitutes a "GPL barrier". Linus says no, and that he intentionally did not add the GPL exception like he did for system calls.

            This is a very clear cut case, the only time it seems ambiguous is when you have FUD-spewing FOSS zealots involved.
            See, you are the zealot here. I simply presented you with the opinion of the Linux creator and many top kernel hackers.

            You are the one who blindly rejects any opinion different from your own.
            Last edited by pingufunkybeat; 06 October 2013, 11:30 AM.

            Comment


            • #86
              Originally posted by brosis View Post
              Have you read my post completely before posting? No, you haven't - then why ask questions about my post before reading?

              The open drivers are sufficiently fast. The problem is newer titles using OpenGL4+, which is not yet supported by MESA. Still not many do this.
              But IF Valve had expressed their wish to use open drivers, they are sufficient entity to affect AMD development policy. Then, the required features would land.

              Originally posted by Gps4l View Post
              Crysis 3


              Still think the opensource driver are good enough ?

              I bought the game Serious Sam 3 on Linux.

              Its only since a month or 3, this games runs good on Linux, and that is with the catalyst driver, which outperforms the opensource driver allot.
              Before I had to lower the resolution on linux, to have a playable frame rate.

              HD5750 1 gig of ram
              AMD phenom II X4 @ 3.2 ghz
              4 gig of ram
              Seriously, in 2011 open arena did 3 fps on your hardware, because even support for OpenGL2 was weak, not only driver being immature - now it runs at over 200 fps.
              Now I tell you about OpenGL4 not materializing, and you shove me DX11 game. WTF?

              Man, how about you stop writing questions and go sleep out instead ?

              Comment


              • #87
                Originally posted by pipe13 View Post
                I agree its irrelevant from that direct point. As for being "a nice PR stunt"... not so much. Or rather a tad bit more. Have you checked with the Nouveau devs? Open sourcing their blob probably isn't legally realistic and isn't going to happen. Publishing hardware specs and dropping some working code fragments as subtle hints is a whole 'nother story. Puts Nvidia playing catch-up on the same open source field as AMD, assuming Nvidia continues to follow through. We'll see. But if you want direct OEM-authored open source graphics drivers, stick with Intel.
                No, i'm not expecting a open source driver made by Nvidia in a Intel style...precisely because the reasons you mention, there are problems that Nvidia have with patents that prevents them to open source video drivers (this is why i always consider Linus "FU" "a bit" over the edge...actually i considered it quite rude and unappropriated) what i'm expecting is them drop those little bits of info piece by piece as Nvidia get permissions from who holds the patents to do so or when/if they consider that might help the open source driver efforts in the case of the parts that they don't need the permissions but that were irrelevant w/o other parts that were protected by patents and for Nouveau didn't figured out by themselves.

                ...and I might should have used a little bit more punctuation in last paragraph

                Comment


                • #88
                  Originally posted by Kano View Post
                  Are you really sure you read that the prototype case is only 12x12.4x2.9"? With 2.9" you can not really use huge cooling solutions and for water cooling there is absolutely no spare place. Btw. i dont get how you can use a fullsize pci-e card with that, low profile cards are usally only up to gt 640 available. Maybe they turn em 90 degree?
                  Taking in account case size and video cards selection indicated by Valve, i bet they will use a 90 degrees adapter for the PCIeX16...possibly Mobo is a mini-ITX with 90 degrees adapter for video card...so it's possible to squeeze full size video card inside...

                  There are also a bunch of power supplies that still can fit there.

                  Comment


                  • #89
                    Originally posted by AJSB View Post
                    ...there are problems that Nvidia have with patents that prevents them to open source video drivers..
                    Where did you guys get this from (source please)?

                    Comment


                    • #90
                      People here say that a titan is too much and also don't understand the choice of the i7 and that prices of STB will be at least 700 USD...

                      Valve didn't choose ANYTHING....what they want is test EVERYTHING.

                      It's perfectly possible to make a (sub-)500 USD (w/o loosing money in it) rig if you use a i3 (that's also one of the options used by Valve) and a GTX660 even considering NewEgg prices...now imagine with bulk component prices.

                      ...and in many aspects, compared with current AMD APU performance at *CPU* level, a i3 is enough to be on par with them or even be better in some aspects.

                      Comment

                      Working...
                      X