Announcement

Collapse
No announcement yet.

AnthraX Linux Kernels Remain Closed Source

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

  • #91
    Originally posted by ninez View Post
    i get the impression his modules may incorporate proprietary code, yet still he probably is using GPL only symbols internally. ie: no separation/shim/wrapper like Nvidia and AMD drivers do
    There is no such things as "GPL only symbols". There are just API/ABIs given to userspace and, according to the kernel clause, you're allowed to access those with proprietary code >from userspace< while not breaking the license of the kernel. But as these modules you're talking about are kernel modules they break the kernels license if they aren't GPL compliant.
    What Nvidia and AMD drivers do is using a GPLed kernel module to expose some of the kernel internals to userspace, thus making them userspace API/ABIs, then writing the proprietary driver code in userspace. There's no clear decision if that's allowed or not and that's off-topic, too, but the AnthraX modules clearly don't work that way.

    Long story short: That you see "closed source" printed from a module running in kernel space is a GPL violation.

    Comment


    • #92
      Originally posted by Thatguy View Post
      10 pages, and not once has anyone stated the obvious, the gpl and its variants are a giant cluster fuck.
      Nope, but you surely are.

      Comment


      • #93
        Originally posted by cry0x View Post
        He charges for access to the binary, and then charges you again when you ask for source code. Clearly that is not an "internal distribution". It's a business and the people getting the binaries and source are customers.
        One may charge for access to binary, and charge for access to code (as right to recieve code is guaranteed for those who recieve binary).
        The charge for source code however may not be higher than that for code, and he may not impose any NDAs/Agreements to prevent those who purchased the binary /and source, to distribute them for any fee. And when this happens, then these persons can demand source from upstream, under very same conditions. But they are not obligated to recieve any binaries from him directly. See GPL faq.

        Comment


        • #94
          Originally posted by TAXI View Post
          There is no such things as "GPL only symbols". There are just API/ABIs given to userspace and, according to the kernel clause, you're allowed to access those with proprietary code >from userspace< while not breaking the license of the kernel. But as these modules you're talking about are kernel modules they break the kernels license if they aren't GPL compliant.
          What Nvidia and AMD drivers do is using a GPLed kernel module to expose some of the kernel internals to userspace, thus making them userspace API/ABIs, then writing the proprietary driver code in userspace. There's no clear decision if that's allowed or not and that's off-topic, too, but the AnthraX modules clearly don't work that way.

          Long story short: That you see "closed source" printed from a module running in kernel space is a GPL violation.
          the EXPORT_SYMBOL / EXPORT_SYMBOL_GPL system exists for a reason, pal. - Or have you never actually looked at kernel code before? (i'm guessing no, by your comment), how about looking at nvidia's code? (i'm guessing no, by your comment).. EXPORT_SYMBOL_GPL/EXPORT_SYMBOL - they differ in what functions will be available/exposed to a given kernel module. EXPORT_SYMBOL_GPL cannot be used in a proprietary driver, as any driver that uses EXPORT_SYMBOL_GPL is considered *derivative of the linux kernel*... Any driver using EXPORT_SYMBOL is NOT considered a derivative work. (hint: Nvidia / AMD and any other closed driver use the latter). Drivers using EXPORT_SYMBOL do not have access to / don't expose functions that EXPORT_SYMBOL_GPL drivers would have available to them.

          Hence why vendors like nvidia often have to work around the fact that they can not use certain kernel features directly. A fine example was DMA-BUF - nvidia begged for kernel devs to use EXPORT_SYMBOL - so that they could use dma-buf without having to shim/wrap it... Phoronix even wrote several articles on the issue; http://www.phoronix.com/scan.php?pag...tem&px=MTA1OTU ... http://www.phoronix.com/scan.php?pag...tem&px=MTIwNDI ...

          So yes, there is such a thing as "GPL only symbols". Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about.

          Comment


          • #95
            Originally posted by ninez View Post
            the EXPORT_SYMBOL / EXPORT_SYMBOL_GPL system exists for a reason, pal. - Or have you never actually looked at kernel code before? (i'm guessing no, by your comment), how about looking at nvidia's code? (i'm guessing no, by your comment).. EXPORT_SYMBOL_GPL/EXPORT_SYMBOL - they differ in what functions will be available/exposed to a given kernel module. EXPORT_SYMBOL_GPL cannot be used in a proprietary driver, as any driver that uses EXPORT_SYMBOL_GPL is considered *derivative of the linux kernel*... Any driver using EXPORT_SYMBOL is NOT considered a derivative work. (hint: Nvidia / AMD and any other closed driver use the latter). Drivers using EXPORT_SYMBOL do not have access to / don't expose functions that EXPORT_SYMBOL_GPL drivers would have available to them.

            Hence why vendors like nvidia often have to work around the fact that they can not use certain kernel features directly. A fine example was DMA-BUF - nvidia begged for kernel devs to use EXPORT_SYMBOL - so that they could use dma-buf without having to shim/wrap it... Phoronix even wrote several articles on the issue; http://www.phoronix.com/scan.php?pag...tem&px=MTA1OTU ... http://www.phoronix.com/scan.php?pag...tem&px=MTIwNDI ...

            So yes, there is such a thing as "GPL only symbols". Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about.
            As far as I understand it, all symbols are GPL. EXPORT_SYMBOL_GPL is just explicitly stated to be GPL, but the code of both are under the GPL license, so they're both GPL. Using EXPORT_SYMBOL_GPL in non-GPL code just means that the person who did that was aware that they were breaking the GPL.

            Comment


            • #96
              Originally posted by ninez View Post
              Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about.
              That's a bad advice, a good way for everyone to stay clueless to different degrees.

              Comment


              • #97
                Originally posted by GreatEmerald View Post
                As far as I understand it, all symbols are GPL. EXPORT_SYMBOL_GPL is just explicitly stated to be GPL, but the code of both are under the GPL license, so they're both GPL. Using EXPORT_SYMBOL_GPL in non-GPL code just means that the person who did that was aware that they were breaking the GPL.
                Non-gpl drivers use EXPORT_SYMBOL, Where as EXPORT_SYMBOL_GPL is for GPL-compliant drivers / derivative works of the kernel. It does not matter that the supporting (kernel) code is licensed gpl(v2), that distinction doesn't really matter. ~ in fact, I'm not even sure why you thought that was a relevant point to make (?), as i don't think anyone (and certainly not me) was implying a different license in the kernel for those (exported) functions... it's a moot point and possibly not relevant at all, to the point that i was making in the first place; TAXI claimed there is no such thing as "gpl only symbols" - while EXPORT_SYMBOL_GPL system is exactly that. He made a factual claim, that was entirely incorrect... It's not a case where one is 'just explicitly stated to be GPL'... they serve different purposes.

                several articles on the differences; http://lwn.net/Articles/154602/ ... http://lwn.net/Articles/154603/ ... http://www.ifross.org/en/artikel/ong...olgpl-function ... and from kernel.org (https://www.kernel.org/doc/htmldocs/...ols-gpl.html);

                Originally posted by kernel.org / kernel-hacking section
                EXPORT_SYMBOL_GPL() include/linux/export.h

                Similar to EXPORT_SYMBOL() except that the symbols exported by EXPORT_SYMBOL_GPL() can only be seen by modules with a MODULE_LICENSE() that specifies a GPL compatible license. It implies that the function is considered an internal implementation issue, and not really an interface.

                Comment


                • #98
                  Originally posted by brosis View Post
                  That's a bad advice, a good way for everyone to stay clueless to different degrees.
                  maybe, maybe not... Here, let me rephrase it then;

                  "Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about, rather than making factual claims that are entirely wrong"... is that better?

                  there is nothing wrong with people asking questions, or for verification, stating opinions, etc (in fact, being inquisitive should never be discouraged) ... but when you start speaking from a place of authority, yet are (obviously) ignorant of basic knowledge on the subject - it's usually not a smart thing to start making claims that aren't true.. (and easily disprovable by anyone who has _actually_ looked at kernel code, driver code <both gpl and non-gpl>, etc)..
                  Last edited by ninez; 04 January 2014, 12:18 PM.

                  Comment


                  • #99
                    Originally posted by ninez View Post
                    maybe, maybe not... Here, let me rephrase it then;

                    "Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about, rather than making factual claims that are entirely wrong"... is that better?

                    there is nothing wrong with people asking questions, or for verification, stating opinions, etc (in fact, being inquisitive should never be discouraged) ... but when you start speaking from a place of authority, yet are (obviously) ignorant of basic knowledge on the subject - it's usually not a smart thing to start making claims that aren't true.. (and easily disprovable by anyone who has _actually_ looked at kernel code, driver code <both gpl and non-gpl>, etc)..
                    sure, but sometimes people do mistakes. you cannot always know what you are missing. so at least give people a chance to understand your critic and arguments before throwing such a sentence against their head. if people still fail after several ping pongs of arguments than you may be able to judge like that. but talking like that such earlier will only harden peoples mindes and kills any discussion before it even started. and no one will be able to learn anything from that.

                    i know it is not always easy to hold back yourself as i not rarly fail myself.

                    Comment


                    • Originally posted by ninez View Post
                      A fine example was DMA-BUF - nvidia begged for kernel devs to use EXPORT_SYMBOL
                      Yes it was, nice that you brought it up. Next time read the mailing list linked in the article you used as an example:


                      Even at one of the articles you linked:
                      Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

                      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.
                      Also please tell me where does the kernel license talk about "GPL symbols" ? https://github.com/torvalds/linux/blob/master/COPYING
                      Next time, refrain from opening your mouth, if you don't actually have a clue as to what you are talking about.
                      ...

                      Comment

                      Working...
                      X