Binary only modules
Any code that is linked into the kernel and distributed as part of
the kernel must fall under GPL which means that the source must be
supplied if the code is distributed. However Linus has made an
exception to this rule for modules, they can be shipped in binary only.
Binary only modules are BAD!
- Kernel developers do not guarantee binary compatibility from one
version of the kernel to another. A binary only module that was
compiled for one kernel can be force loaded into a different kernel
version but there are no guarantees that it will still work. It can
even crash your system.
- A binary module compiled for UP can be loaded into an SMP kernel
and vice versa. This is a guaranteed way to destroy your system.
- No kernel developer will look at a bug report that contains a
binary only module. If we do not have the source to a module then we
cannot debug it.