This question has 2 answers: a technical one, and my personal one. I'll give you the technical one first:
Since 2.4.something, kernel modules are required to have a license type encoded in the module, similiar to the kernel version number. This is because the Linux kernel is based on the GNU GPL (General Public License), and some kernel developers feel that all modules that are loaded in the kernel should be GPL 'licensed' too, so that's why this check is built into modutils. However, since PWCX is based on an NDA and closed source, it cannot be released as a GPL module. So I put in another text for the license type, and that's why modutils complains.
Fortunately, this does not affect the working of the module in any way; it is just a reminder that the module you're loading isn't 100% GPL 'pure'. To most people this doesn't matter; as long as it works without much hassle they don't care. But some people insist on having a 100% pure GPL system, so they are warned, and probably do not wish to use the PWCX module.
Well, I am not too pleased about this. In fact, it worries me a lot. I'll explain.
As stated above, the Linux kernel is placed under the GNU General Public License. In short, it instructs anybody who uses GPL'ed code in their project, that he or she should distribute the source code along with the compiled (binary) form of their programs. In other words: a work derived from a GPL'ed program should be GPL'ed as well, and distributed with the completely source form.
This concept is at the heart of the Open Source movement, of which the Linux kernel is an outstanding example and this has worked quite well. But of course there are instances where you cannot, or do not wish to, distribute the source code of your project (patents, licenses, innovative new design, pure greed, you name it). For programs that run on Linux this is not a problem; the boundary between program and kernel is clearly defined and nobody really cares that program X calls kernel function Y, and there is no source publicly available for X.
For modules, like PWC and PWCX, the situation is somewhat different. Because they are loaded into the kernel, they become and integral part of it; they also have access to all data and functions inside the kernel. This applies to both modules with and without source (the binary-only module is compiled by a 3rd party from his own private source). In the past this was never a problem; in fact Linus made a specific excemption for binary-only modules, most likely to please hardware vendors who were uncomfortable with exposing all their trade-secrets to the world in the form of human-readable source code.
But recently, there has been a disturbing change in attitude. To quote from this rather lengthy post on linux-kernel, "Some kernel developers are unhappy [...] to see those interfaces being used by binary only modules". In other words: they do not longer wish for binary only modules that use their work (e.g. interface) to function inside the Linux kernel. In their view, everything, and I mean literally everything should be Open Source.
To accomplish this, they invented a mechanism by which functions are no longer available UNLESS a module has been specifically compiled in "GPL mode". And here's the catch: a binary-only module could never (legally) be compiled in "GPL mode" since the source is not available. Thus, sooner or later this module might need a function it may not use.
Now Linus Torvalds, in his infinite wisdom, has decreed that only new functions may be declared "GPL-only" (and of course only when the developer insists). So all existing binary modules will still work; in the mean time 'modutils' will warn you that you are trying to load a non-GPL module in your kernel, thereby scaring the wits out of the unsuspecting user. Of course, it is only a matter of time before either a) a function is added that is absolutely vital for some (new) binary-only module or b) some function disappears, with the same net effect.
I think the implementation of this mechanism is arrogant, pretentious and downright against the spirit of Open Source. Who do they think they are? From which planet are these guys?!?!
First off, even though these developers are the copyright holder of their work, I find it rather arrogant to tell who may call your work or not. Calling a function that is readily available to your program (in this case, from the kernel) is different than using the code from that function yourself. It's like the difference between baking a cake based on a recipe from a cookbook, or making your own recipe based on it. So in this respect, I think they are overstepping their boundaries.
Second: do they really think it's going to a make a difference? Are reluctant hardware vendors who might consider, or work on, a binary-only module really going to jump the bandwagon and release the source? Of course not. No matter how you look at it, Linux still hasn't got enough weight in the consumer market for vendors to really *need* Linux support in order to sell. The moment their binary-only modules becomes unworkable due to this GPL mechanism, they'll drop Linux support like a brick.
Third, I seriously doubt that this is what Open Source is about. To me, Open Source is a cooperative way of building and enhancing software. I make some program and publish it; someone else picks it up and fixes bugs, enhances it, sends feedback and basicly pays me respect by using my code, which makes me feel good. But if you are using my code in your own product, I do demand that you publish your source code as well; on the other hand, I do not place any restrictions on who may use my code for what purpose.
And this is exactly what these developers are doing. They do not only decree how their code should be used, they also want to determine who may use it, by effectively blocking those who cannot or do not wish to follow their view by 100%. The GPL talks about freedom, as in freedom of speech. There is very little freedom in these GPL mechanisms...
Now that they see they can't convince the rest of the world of their GPL point of view, they'll try to force it upon them, even overshooting themselves in the process. This happened when someone made the comment that you could theoretically work around the GPL limitations, and this mail touts this as possibly being an 'illegal circumvention device' under the DCMA (Digital Copyright Millenium Act), the most despised law of all times by the Open Source community!
Sometimes, one can't help wondering if this Open Source puritism isn't going to hurt the movement more than it's going to help. More than once I've been deeply annoyed by, for lack of a better word, Open Source zealots who insist that every program should be available as source code; this is simply unrealistic. Programmers have to eat too. And distributing a program binary-only is a helluvalot better way to insure income than the source-only variety. Let's face it: it is simply too easy to rip-off by using somebody's source code. And although by the letter of the law the GPL does not allow this, it is in my opinion a very weak license to prevent this.
The Open Source zealots do not really make themselves anymore credible by acting in this way. In fact, they remind me more of a 5-year old who has just been told he cannot have an icecream and goes "Waaaahhhh!!!"... Please, do grow up.
Distribution of this text is unlimited, provided proper credit is retained. Meaningful comments can be sent to nemosoft at smcc dot demon dot nl and will be read but may go unanswered. Flames, rages and GPL sermons go to /dev/null.
2002-10-07 - Nemosoft Unv.