User: Password:
Subscribe / Log in / New account

Linus on binary-only modules

From:  Linus Torvalds <>
To:  Christoph Hellwig <>
Subject:  Re: [PATCH] make LSM register functions GPLonly exports
Date:  Thu, 17 Oct 2002 10:08:19 -0700 (PDT)
Cc:  Crispin Cowan <>, Greg KH <>, <>

Note that if this fight ends up being a major issue, I'm just going to 
remove LSM and let the security vendors do their own thing. So far

 - I have not seen a lot of actual usage of the hooks
 - seen a number of people who still worry that the hooks degrade 
   performance in critical areas
 - the worry that people use it for non-GPL'd modules is apparently real, 
   considering Crispin's reply.

I will re-iterate my stance on the GPL and kernel modules:

  There is NOTHING in the kernel license that allows modules to be 

  The _only_ thing that allows for non-GPL modules is copyright law, and 
  in particular the "derived work" issue. A vendor who distributes non-GPL 
  modules is _not_ protected by the module interface per se, and should 
  feel very confident that they can show in a court of law that the code 
  is not derived.

  The module interface has NEVER been documented or meant to be a GPL 
  barrier. The COPYING clearly states that the system call layer is such a 
  barrier, so if you do your work in user land you're not in any way 
  beholden to the GPL. The module interfaces are not system calls: there 
  are system calls used to _install_ them, but the actual interfaces are

  The original binary-only modules were for things that were pre-existing 
  works of code, ie drivers and filesystems ported from other operating 
  systems, which thus could clearly be argued to not be derived works, and 
  the original limited export table also acted somewhat as a barrier to 
  show a level of distance.

In short, Crispin: I'm going to apply the patch, and if you as a copyright 
holder of that file disagree, I will simply remove all of he LSM code from 
the kernel. I think it's very clear that a LSM module is a derived work, 
and thus copyright law and the GPL are not in any way unclear about it. 

If people think they can avoid the GPL by using function pointers, they 
are WRONG. And they have always been wrong.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

(Log in to post comments)


Posted Oct 18, 2002 0:59 UTC (Fri) by tony_peden (guest, #531) [Link]

Would you consider posting a link to the relevant thread in one of the archives when you post lkml messages? It would be a great convenience.



Posted Oct 18, 2002 3:32 UTC (Fri) by dang (subscriber, #310) [Link]

hit the lkml archvies ( eg: )

and search down to this:

[PATCH] make LSM register functions GPLonly exports

Linus on binary-only modules

Posted Oct 18, 2002 15:08 UTC (Fri) by Baylink (guest, #755) [Link]

and should feel very confident that they can show in a court of law that the code is not derived.

... before they try it.

The quote -- that is, Linus' phrasing -- is somewhat ambiguous; I had to go check the actual message to be sure this wasn't a typo.
-- j

Copyright © 2002, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds