linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: Driver Model
       [not found] ` <rK5y.1xN.25@gated-at.bofh.it>
@ 2003-09-03 18:42   ` Pascal Schmidt
  2003-09-03 19:49     ` Andre Hedrick
  2003-09-03 22:41     ` David Schwartz
  0 siblings, 2 replies; 44+ messages in thread
From: Pascal Schmidt @ 2003-09-03 18:42 UTC (permalink / raw)
  To: Andre Hedrick; +Cc: linux-kernel

On Wed, 03 Sep 2003 20:00:24 +0200, you wrote in linux.kernel:

> The fact that GPL_ONLY horse sh*t exists means there is a restriction on
> usage.  So "GPL_ONLY" has in effect violated GPL, by imposing restrictions
> of usage.

Where is the restriction? You get the source code, you can roll your
own and remove the GPL_ONLY stuff. Apart from that I do not recall
to have seen anything about restrictions of usage in the GPL... the
only thing it tries to prevent is the source code becoming proprietary.

-- 
Ciao,
Pascal

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 18:42   ` Driver Model Pascal Schmidt
@ 2003-09-03 19:49     ` Andre Hedrick
  2003-09-03 22:41     ` David Schwartz
  1 sibling, 0 replies; 44+ messages in thread
From: Andre Hedrick @ 2003-09-03 19:49 UTC (permalink / raw)
  To: Pascal Schmidt; +Cc: linux-kernel


On Wed, 3 Sep 2003, Pascal Schmidt wrote:

> On Wed, 03 Sep 2003 20:00:24 +0200, you wrote in linux.kernel:
> 
> > The fact that GPL_ONLY horse sh*t exists means there is a restriction on
> > usage.  So "GPL_ONLY" has in effect violated GPL, by imposing restrictions
> > of usage.
> 
> Where is the restriction? You get the source code, you can roll your
> own and remove the GPL_ONLY stuff. Apart from that I do not recall
> to have seen anything about restrictions of usage in the GPL... the
> only thing it tries to prevent is the source code becoming proprietary.

Pascal,

I agree with you and you make the point clear!
There are people who have issued letters to big linux distributors in the
US about changing a symbol types.  That is a restriction for usage, in my
opinion.

Cheers,

Andre



^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 18:42   ` Driver Model Pascal Schmidt
  2003-09-03 19:49     ` Andre Hedrick
@ 2003-09-03 22:41     ` David Schwartz
  2003-09-03 23:11       ` Pascal Schmidt
  1 sibling, 1 reply; 44+ messages in thread
From: David Schwartz @ 2003-09-03 22:41 UTC (permalink / raw)
  To: Pascal Schmidt, Andre Hedrick; +Cc: linux-kernel



> On Wed, 03 Sep 2003 20:00:24 +0200, you wrote in linux.kernel:

> > The fact that GPL_ONLY horse sh*t exists means there is a restriction on
> > usage.  So "GPL_ONLY" has in effect violated GPL, by imposing
> > restrictions
> > of usage.

> Where is the restriction? You get the source code, you can roll your
> own and remove the GPL_ONLY stuff. Apart from that I do not recall
> to have seen anything about restrictions of usage in the GPL... the
> only thing it tries to prevent is the source code becoming proprietary.

	If the GPL_ONLY stuff is a license enforcement scheme, the DMCA prohibits
you from removing it. If the GPL_ONLY stuff is not a license enforcement
scheme, nothing prohibits you from stamping your module GPL when it's not.

	However, the GPL (section 2b) prohibits you from imposing any restrictions
other than those in the GPL itself. The GPL contains no restrictions that
apply to mere use and the GPL_ONLY stuff affects use, so it can't be a
license restriction, hence there is no restriction to enforce.

	I don't see anything preventing a GPL'd work from containing code that
imposes restrictions actually contained in the GPL and using the DMCA to
enforce them. But it would have to be a restriction contained in the GPL
itself, and there is no restriction about what code you can use with a GPL'd
work.

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 22:41     ` David Schwartz
@ 2003-09-03 23:11       ` Pascal Schmidt
  2003-09-03 23:33         ` David Schwartz
  2003-09-04  1:37         ` Driver Model Andre Hedrick
  0 siblings, 2 replies; 44+ messages in thread
From: Pascal Schmidt @ 2003-09-03 23:11 UTC (permalink / raw)
  To: David Schwartz; +Cc: linux-kernel

On Wed, 3 Sep 2003, David Schwartz wrote:

> If the GPL_ONLY stuff is a license enforcement scheme, the DMCA 
> prohibits you from removing it.

-ENOTUSCITIZEN

> If the GPL_ONLY stuff is not a license enforcement scheme, nothing 
> prohibits you from stamping your module GPL when it's not.

I'd say its up to the lawyers and judges to find out whether having
MODULE_LICENSE("GPL") in a module means anything legally. It might
mean "I promise this module is made from GPL source", but it might
also mean nothing.

> However, the GPL (section 2b) prohibits you from imposing any
> restrictions other than those in the GPL itself.

Section 2b) in the file COPYING in the root dir of the kernel source
does not talk about restrictions. Are we talking about the same version
of the GPL?

> The GPL contains no restrictions that
> apply to mere use and the GPL_ONLY stuff affects use, so it can't be a
> license restriction, hence there is no restriction to enforce.

The GPL doesn't even cover use of the "product". It covers modification
and redistribution.

Well, it is still an open question whether kernel modules are derived
works or not, especially since we don't have a stable kernel ABI and
therefore modules have to use part of the kernel source (headers) and
module writers have to study kernel code to write their modules (since
there is no official complete documentation about functions in the 
kernel).

If modules are derived works, then legally, following the GPL, they
must be GPL too and GPL_ONLY is no problem but pointless.

Seems to me you could say GPL_ONLY is a way of the developer saying
"I consider your stuff to be a derived work if you use this symbol".
Ask a lawyer whether that's their decision to make. ;)

Apart from that, I fail to see how it is an addition restriction
when you still have the right to remove all the GPL_ONLY stuff. After
all, the kernel is GPLed work, so you have the right to remove
things and distribute the result. How is it a real restriction when
the license allows you to remove it?

-- 
Ciao,
Pascal


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 23:11       ` Pascal Schmidt
@ 2003-09-03 23:33         ` David Schwartz
  2003-09-04  1:38           ` Pascal Schmidt
  2003-09-04  1:37         ` Driver Model Andre Hedrick
  1 sibling, 1 reply; 44+ messages in thread
From: David Schwartz @ 2003-09-03 23:33 UTC (permalink / raw)
  To: Pascal Schmidt; +Cc: linux-kernel


> On Wed, 3 Sep 2003, David Schwartz wrote:

> > If the GPL_ONLY stuff is a license enforcement scheme, the DMCA
> > prohibits you from removing it.

> -ENOTUSCITIZEN

	In that case, there is more than likely nothing that prevents you from
doing whatever you want.

> > If the GPL_ONLY stuff is not a license enforcement scheme, nothing
> > prohibits you from stamping your module GPL when it's not.

> I'd say its up to the lawyers and judges to find out whether having
> MODULE_LICENSE("GPL") in a module means anything legally. It might
> mean "I promise this module is made from GPL source", but it might
> also mean nothing.

	Probably so.

> > However, the GPL (section 2b) prohibits you from imposing any
> > restrictions other than those in the GPL itself.

> Section 2b) in the file COPYING in the root dir of the kernel source
> does not talk about restrictions. Are we talking about the same version
> of the GPL?

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

	In other words, if you want to distribute the Linux kernel, you must
license it under the terms of the GPL. You may not impose additional
restrictions because if you do, you're not causing it to be distribute under
the terms of "this License".

	So if I download the Linux kernel from somewhere, someone distributed it to
me. Hence, if they complied with the GPL, I am under only the obligations
imposed by the GPL.

> > The GPL contains no restrictions that
> > apply to mere use and the GPL_ONLY stuff affects use, so it can't be a
> > license restriction, hence there is no restriction to enforce.

> The GPL doesn't even cover use of the "product". It covers modification
> and redistribution.

	It does cover use. Specifically, it permits unrestriced use. If you
received GPL'd code, you have the unrestricted right to use it. That's what
section 2b says.

> Well, it is still an open question whether kernel modules are derived
> works or not, especially since we don't have a stable kernel ABI and
> therefore modules have to use part of the kernel source (headers) and
> module writers have to study kernel code to write their modules (since
> there is no official complete documentation about functions in the
> kernel).

	Non-issue. I'm talking about your rights to *use* the kernel.

> If modules are derived works, then legally, following the GPL, they
> must be GPL too and GPL_ONLY is no problem but pointless.

	You must not be reading the same GPL I am. Can you please cite to me the
section that requires derived works to be placed under the GPL. I can't find
it.

> Seems to me you could say GPL_ONLY is a way of the developer saying
> "I consider your stuff to be a derived work if you use this symbol".
> Ask a lawyer whether that's their decision to make. ;)

	But that's not what it does. It prevents you from using the kernel in
certain ways. The GPL does not permit such usage restrictions. It also
restricts your ability to create and use derived works. The GPL similarly
does not permit such restrictions. The only restrictions the GPL allows a
distributed derived work to contain are those specifically imposed by the
GPL, and those restrictions only kick in at distribution.

	If there were distribution restrictions, you'd have an argument. But we are
talking about use restrictions.

> Apart from that, I fail to see how it is an addition restriction
> when you still have the right to remove all the GPL_ONLY stuff.

	You only have that right (in the United States) if the GPL_ONLY stuff is
*not* a copyright enforcement scheme.

> After
> all, the kernel is GPLed work, so you have the right to remove
> things and distribute the result. How is it a real restriction when
> the license allows you to remove it?

	Fine, so long as we all agree that the GPL_ONLY stuff is not a copyright or
license enforcement scheme and that evading or modifying it is not evading a
copyright/license enforcement scheme. In this case, you cannot argue that
the DMCA prohibits claiming a GPL license for purposes of compatability.

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 23:11       ` Pascal Schmidt
  2003-09-03 23:33         ` David Schwartz
@ 2003-09-04  1:37         ` Andre Hedrick
  1 sibling, 0 replies; 44+ messages in thread
From: Andre Hedrick @ 2003-09-04  1:37 UTC (permalink / raw)
  To: Pascal Schmidt; +Cc: David Schwartz, linux-kernel


Pascal,

SUPER HIGH FIVE!

You have made the obvious clear, and most will not even follow or listen.

Cheers,

Andre Hedrick
LAD Storage Consulting Group

On Thu, 4 Sep 2003, Pascal Schmidt wrote:

> On Wed, 3 Sep 2003, David Schwartz wrote:
> 
> > If the GPL_ONLY stuff is a license enforcement scheme, the DMCA 
> > prohibits you from removing it.
> 
> -ENOTUSCITIZEN
> 
> > If the GPL_ONLY stuff is not a license enforcement scheme, nothing 
> > prohibits you from stamping your module GPL when it's not.
> 
> I'd say its up to the lawyers and judges to find out whether having
> MODULE_LICENSE("GPL") in a module means anything legally. It might
> mean "I promise this module is made from GPL source", but it might
> also mean nothing.
> 
> > However, the GPL (section 2b) prohibits you from imposing any
> > restrictions other than those in the GPL itself.
> 
> Section 2b) in the file COPYING in the root dir of the kernel source
> does not talk about restrictions. Are we talking about the same version
> of the GPL?
> 
> > The GPL contains no restrictions that
> > apply to mere use and the GPL_ONLY stuff affects use, so it can't be a
> > license restriction, hence there is no restriction to enforce.
> 
> The GPL doesn't even cover use of the "product". It covers modification
> and redistribution.
> 
> Well, it is still an open question whether kernel modules are derived
> works or not, especially since we don't have a stable kernel ABI and
> therefore modules have to use part of the kernel source (headers) and
> module writers have to study kernel code to write their modules (since
> there is no official complete documentation about functions in the 
> kernel).
> 
> If modules are derived works, then legally, following the GPL, they
> must be GPL too and GPL_ONLY is no problem but pointless.
> 
> Seems to me you could say GPL_ONLY is a way of the developer saying
> "I consider your stuff to be a derived work if you use this symbol".
> Ask a lawyer whether that's their decision to make. ;)
> 
> Apart from that, I fail to see how it is an addition restriction
> when you still have the right to remove all the GPL_ONLY stuff. After
> all, the kernel is GPLed work, so you have the right to remove
> things and distribute the result. How is it a real restriction when
> the license allows you to remove it?
> 
> -- 
> Ciao,
> Pascal
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 23:33         ` David Schwartz
@ 2003-09-04  1:38           ` Pascal Schmidt
  2003-09-04  3:01             ` David Schwartz
  0 siblings, 1 reply; 44+ messages in thread
From: Pascal Schmidt @ 2003-09-04  1:38 UTC (permalink / raw)
  To: David Schwartz; +Cc: linux-kernel

On Wed, 3 Sep 2003, David Schwartz wrote:

> In other words, if you want to distribute the Linux kernel, you must
> license it under the terms of the GPL. You may not impose additional
> restrictions because if you do, you're not causing it to be distribute
> under the terms of "this License".

Correct.

> It does cover use.

In section 0:

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.

> Specifically, it permits unrestriced use. If you
> received GPL'd code, you have the unrestricted right to use it. That's
> what section 2b says.

No, section 2b gives you the the right to copy, distribute, and modify
the code (as the license only covers those rights, as per section 0) and 
no restrictions may be placed on those specific rights.

> Non-issue. I'm talking about your rights to *use* the kernel.

Well, I'm not buying the argument that the GPL has anything to say
about usage.

> You must not be reading the same GPL I am. Can you please cite to me the
> section that requires derived works to be placed under the GPL. I can't
> find it.

You quoted it yourself. 2b) 

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

"work that ... is derived from the Program or any part thereof"

> But that's not what it does. It prevents you from using the kernel in
> certain ways. The GPL does not permit such usage restrictions.

Lots of GPL'ed programs refuse to be used in certain ways. For example,
fetchmail will refuse to run with a world-readable .fetchmailrc file.

> It also restricts your ability to create and use derived works. The GPL 
> similarly does not permit such restrictions.

That it does not, and such a restriction would violate the GPL, I'd
agree to that.

> You only have that right (in the United States) if the GPL_ONLY stuff is
> *not* a copyright enforcement scheme.

How can it be that? It does not restrict copying nor distribution
nor modification.

People here are saying that it's more of a hint to people that they
better think hard and ask a lawyer before implementing non-GPL'ed
kernel modules.

I think you bringing the DMCA into this shows an interesting aspect
of that law: who gets to say what is a copyright enforcement scheme
and what is not?

-- 
Ciao,
Pascal


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-04  1:38           ` Pascal Schmidt
@ 2003-09-04  3:01             ` David Schwartz
  2003-09-04 14:21               ` Pascal Schmidt
  2003-09-10 14:59               ` People, not GPL [was: Re: Driver Model] Timothy Miller
  0 siblings, 2 replies; 44+ messages in thread
From: David Schwartz @ 2003-09-04  3:01 UTC (permalink / raw)
  To: Pascal Schmidt; +Cc: linux-kernel


> On Wed, 3 Sep 2003, David Schwartz wrote:
>
> > In other words, if you want to distribute the Linux kernel, you must
> > license it under the terms of the GPL. You may not impose additional
> > restrictions because if you do, you're not causing it to be distribute
> > under the terms of "this License".
>
> Correct.
>
> > It does cover use.
>
> In section 0:
>
> Activities other than copying, distribution and modification are not
> covered by this License; they are outside its scope.

	So are you arguing that I can distribute a derived work from the Linux
kernel and attach a 'you may not use this unless you pay me $100' clause and
it would be enforceable?

> > Specifically, it permits unrestriced use. If you
> > received GPL'd code, you have the unrestricted right to use it. That's
> > what section 2b says.
>
> No, section 2b gives you the the right to copy, distribute, and modify
> the code (as the license only covers those rights, as per section 0) and
> no restrictions may be placed on those specific rights.

	If you are right, you've discovered a serious fundamental flaw in the GPL.
I can distribute code under the GPL and prohibit anyone from using derived
works, hence effectively removing their freedom to modify.

> > Non-issue. I'm talking about your rights to *use* the kernel.
>
> Well, I'm not buying the argument that the GPL has anything to say
> about usage.

	Then you have no right to usage. The preamble contradicts this, but I doubt
it's binding.

> > You must not be reading the same GPL I am. Can you please cite to me the
> > section that requires derived works to be placed under the GPL. I can't
> > find it.
>
> You quoted it yourself. 2b)
>
>     b) You must cause any work that you distribute or publish, that in
>     whole or in part contains or is derived from the Program or any
>     part thereof, to be licensed as a whole at no charge to all third
>     parties under the terms of this License.
>
> "work that ... is derived from the Program or any part thereof"

	This is only about works that you distribute or publish. We're talking
about using modules.

> > But that's not what it does. It prevents you from using the kernel in
> > certain ways. The GPL does not permit such usage restrictions.
>
> Lots of GPL'ed programs refuse to be used in certain ways. For example,
> fetchmail will refuse to run with a world-readable .fetchmailrc file.

	Yes, but nobody's arguing that these are license enforcement schemes or
that this is a license restriction. Nobody would complain if you removed
those restrictions. The question here is whether the GPL_ONLY stuff is a
copyright enforcement mechanism or license restriction. If we agree it's not
and anyone is free to circumvent or remove it, then there's nothing to
dispute.

> > It also restricts your ability to create and use derived works. The GPL
> > similarly does not permit such restrictions.
>
> That it does not, and such a restriction would violate the GPL, I'd
> agree to that.

	Okay.

> > You only have that right (in the United States) if the GPL_ONLY stuff is
> > *not* a copyright enforcement scheme.

> How can it be that? It does not restrict copying nor distribution
> nor modification.

	Copyright enforcement schemes can also restrict usage. Access cards for
satellite TV are purely usage restriction devices.

> People here are saying that it's more of a hint to people that they
> better think hard and ask a lawyer before implementing non-GPL'ed
> kernel modules.

	I'd agree with that.

> I think you bringing the DMCA into this shows an interesting aspect
> of that law: who gets to say what is a copyright enforcement scheme
> and what is not?

	The law has a somewhat incomprehensible definition of what consitutes such
a scheme. I don't think anybody really knows what things would be considered
copyright enforcement schemes and what would not.

	Your argument that the GPL does not grant usage rights is troubling. If
it's correct, then I have no right to use the Linux kernel, since the
copyright holders never granted it to me!

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-04  3:01             ` David Schwartz
@ 2003-09-04 14:21               ` Pascal Schmidt
  2003-09-10 14:59               ` People, not GPL [was: Re: Driver Model] Timothy Miller
  1 sibling, 0 replies; 44+ messages in thread
From: Pascal Schmidt @ 2003-09-04 14:21 UTC (permalink / raw)
  To: David Schwartz; +Cc: linux-kernel

On Wed, 3 Sep 2003, David Schwartz wrote:

> So are you arguing that I can distribute a derived work from the Linux
> kernel and attach a 'you may not use this unless you pay me $100' clause
> and it would be enforceable?

Well, the GPL does not allow you to impose retrictions on copying and
redistribution, so you cannot disallow others redistributing your work
without your usage clause attached, and it would be legal for them to
do that under the GPL.

Your restriction could only effect the part of the kernel you
actually modified, because that would be the only part you have
copyright on. How are you going to prove people used that part? They
have the right to modify the copy, unrestricted, so they could've
taken your piece of the code out before using the kernel.

> If you are right, you've discovered a serious fundamental flaw in the 
> GPL. I can distribute code under the GPL and prohibit anyone from using 
> derived works, hence effectively removing their freedom to modify.

No, I don't see how you have influence over derived works. Nothing in
the GPL allows you to bind redistributors to your usage clause, since
copying and redistribution is covered by the GPL.

> Then you have no right to usage. The preamble contradicts this, but I
> doubt it's binding.

Well, under German law, if I have the right to legally obtain something,
I automatically have the right to usage. Law only comes into play again if
I redistribute it or use it in public in some illegal way.

Under German law, you need a real contract in place for usage
restrictions to be effective or you need to make certain kinds of
usage technically impossible (because if you don't, courts will say
you did not even attempt to protect your interests). And no, MS-type 
"open this bag and you're bound to our license" is not a legal contract 
over here. Violation of the usage restriction would then fall under 
contract law, not copyright law.

I don't see how GPL'ed code can have technical restrictions since I
can easily compile and change it and I don't have to sign a contract to 
get it since the license grants unrestricted redistribution right.

This may all be different in the US, of course.

> This is only about works that you distribute or publish. We're talking
> about using modules.

Well, somebody must have distributed the module, and if that act was
illegal because of a GPL violation, I don't know whether you have any
right to usage anyway.

> Copyright enforcement schemes can also restrict usage. Access cards for
> satellite TV are purely usage restriction devices.

These come with a contract here in Germany, and once you have a contract,
you can of course, within some limits, put usage restrictions in it as
much as you like. You just have to make sure you only give the card to
someone who has indeed signed the contract.

-- 
Ciao,
Pascal


^ permalink raw reply	[flat|nested] 44+ messages in thread

* People, not GPL  [was: Re: Driver Model]
  2003-09-04  3:01             ` David Schwartz
  2003-09-04 14:21               ` Pascal Schmidt
@ 2003-09-10 14:59               ` Timothy Miller
  2003-09-10 20:34                 ` David Schwartz
  2003-09-10 23:35                 ` James Clark
  1 sibling, 2 replies; 44+ messages in thread
From: Timothy Miller @ 2003-09-10 14:59 UTC (permalink / raw)
  To: David Schwartz; +Cc: Pascal Schmidt, linux-kernel

I'm still 1600 messages behind in reading the list, but I have spent 
enough time reading the discussion about GPL and drivers that I feel 
compelled to comment.  I don't intend to comment further because I don't 
want to contribute to a flamewar any more than this already will.  But I 
feel the need to defend those who contribute to Free Software against 
those who don't.

The argument I have been reading has been centered around the idea of 
working around the GPL to support binary-only driver and various other 
things which are counter to the spirit of the GPL and Linux.  But 
someone who is trying to find a legal GPL loophole is not considering 
the root of the situation and that the GPL is an effect, not a cause.

A point someone else made that I feel compelled to reiterate is that it 
is the nature of the Linux development model and the attitude of the 
developers which has made Linux what it is and has made you want to use it.

But I have another point.  You are not dealing with a license here.  The 
license is there to satisfy lawyers and make clear the INTENT of the 
authors.  The keyword here is INTENT in that someone who has developed 
something is telling you how they feel about the use of their work 
which, under many circumstances, they could have chosen not to share 
with you.  What you are dealing with is real people who have put an 
incredible amount of time and effort into developing Linux.  Those 
people, to whom you owe much respect for sharing their contributions, 
have decided that their software should be used with certain 
restrictions, that being the GPL.  If you abuse Linux, it is not the GPL 
that you are insulting, but the people who developed Linux.

The GPL_ONLY restriction for driver modules may seem unfair, but it is 
far from it.  There are both valid technical and philosophical reasons 
for working that way.  No one forces you to use Linux, and when you made 
the choice to use it, you are entering into a community with a specific 
philosophy.  You know that philosophy in advance, so when you discover 
that you have a restruction you don't like, you have no room to complain.

As someone said, if you want to write drivers for a UNIX which does not 
have these restrictions, there are plenty of commercial UNIXes out there 
that you have to choose from.  The fact that they are perhaps less 
popular is one reason why Linux developers do not want to imitate them.

So, the discussions about finding ways to make a non-GPL driver look 
like a GPL driver and get away with it legally are all moot.  The reason 
you should not violate this is because the architects of Linux do not 
want you to.  If you choose to violate that, you are being unethical, 
pure and simple.  Or more to the point, you're being an asshole to a lot 
of hard-working people who have chosen to freely share their work with 
you.  Since they are the authors and you are not, their feelings about 
their softare are more important than yours.  You may be able to screw 
them over and get away with it -- people do that sort of thing all the 
time -- but the fact that you may find a legal loophole doesn't make you 
any less of an abject asshole.

In short:  Be honorable.


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: People, not GPL  [was: Re: Driver Model]
  2003-09-10 14:59               ` People, not GPL [was: Re: Driver Model] Timothy Miller
@ 2003-09-10 20:34                 ` David Schwartz
  2003-09-12 19:55                   ` Timothy Miller
  2003-09-10 23:35                 ` James Clark
  1 sibling, 1 reply; 44+ messages in thread
From: David Schwartz @ 2003-09-10 20:34 UTC (permalink / raw)
  To: Timothy Miller; +Cc: Pascal Schmidt, linux-kernel


> But I have another point.  You are not dealing with a license here.  The
> license is there to satisfy lawyers and make clear the INTENT of the
> authors.  The keyword here is INTENT in that someone who has developed
> something is telling you how they feel about the use of their work
> which, under many circumstances, they could have chosen not to share
> with you.  What you are dealing with is real people who have put an
> incredible amount of time and effort into developing Linux.  Those
> people, to whom you owe much respect for sharing their contributions,
> have decided that their software should be used with certain
> restrictions, that being the GPL.  If you abuse Linux, it is not the GPL
> that you are insulting, but the people who developed Linux.

	In other words, information does not want to be free. You shouldn't use
code the way you want to use it but the way the authors want you to use it.
After all, they didn't have to give it to you if they didn't want to.

	However, Richard Stallman does not agree with this view. It's his view that
if the authors chose to give you the code, you can use it any way you want
to, regardless of how the authors feel about that type of usage. This is why
he created the GPL.

> So, the discussions about finding ways to make a non-GPL driver look
> like a GPL driver and get away with it legally are all moot.  The reason
> you should not violate this is because the architects of Linux do not
> want you to.

	If you really believe that the Linux authors wished to continue to control
how their code was used, you have to think that they were stupid to release
the code under the GPL. After all, the whole point of the GPL is to prohibit
such restrictions. The reason Linux is under the GPL is so that developers
*can't* put restrictions on how the package can be used. That's the "open"
in open source.

> If you choose to violate that, you are being unethical,
> pure and simple.  Or more to the point, you're being an asshole to a lot
> of hard-working people who have chosen to freely share their work with
> you.

	The person who tries to put other people's GPL'd works under his license
restrictions is the asshole. I have contributed code to the Linux kernel
under the GPL license (bonus points to anyone who can find my 25 lines of
code or so). It is nobody else's right to add code to my code and add usage
restrictions to it. The GPL expressly forbids this.

> Since they are the authors and you are not, their feelings about
> their softare are more important than yours.

	I'm just baffled. You don't seem to understand at all why the Linux kernel
is organized under the GPL. It's precisely so that some developers can't
hijack the project and encumber the growing source base with usage and
distribution restrictions.

> You may be able to screw
> them over and get away with it -- people do that sort of thing all the
> time -- but the fact that you may find a legal loophole doesn't make you
> any less of an abject asshole.

	The asshole is the person who thinks that they have the right to change the
express wishes of all the other contributors to the kernel who chose to
contribute to a project that operates under the GPL license. The GPL license
is about there being no restrictions on usage.

> In short:  Be honorable.

	I am. The hijackers are not.

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: People, not GPL  [was: Re: Driver Model]
  2003-09-10 14:59               ` People, not GPL [was: Re: Driver Model] Timothy Miller
  2003-09-10 20:34                 ` David Schwartz
@ 2003-09-10 23:35                 ` James Clark
  1 sibling, 0 replies; 44+ messages in thread
From: James Clark @ 2003-09-10 23:35 UTC (permalink / raw)
  To: Timothy Miller, David Schwartz; +Cc: Pascal Schmidt, linux-kernel

In many ways the original intention of the debate was lost in the battle. 
There are a lot of zealots on both sides of the GPL debate - personally, my 
undertanding is that the GPL forbids usage restrictions, thus once you 
release code under the GPL you cannot control it. This seems especially 
important in a project, such as Linux, that has been collaboratively 
developmed by a whole community.

The original question was would a binary driver interface allow easier usage 
by 'normal' users with any compatible kernel (rather than specific versions) 
and perhaps simplify module development cycle? 

Would the performance hit involved be worth the potential 
compatibility/simplicity? 

A lot of people have, assumed that this is a call to arms for binary-only 
modules. This is not true although this type of change would make such things 
more common.

James


On Wednesday 10 Sep 2003 3:59 pm, Timothy Miller wrote:
> I'm still 1600 messages behind in reading the list, but I have spent
> enough time reading the discussion about GPL and drivers that I feel
> compelled to comment.  I don't intend to comment further because I don't
> want to contribute to a flamewar any more than this already will.  But I
> feel the need to defend those who contribute to Free Software against
> those who don't.
>
> The argument I have been reading has been centered around the idea of
> working around the GPL to support binary-only driver and various other
> things which are counter to the spirit of the GPL and Linux.  But
> someone who is trying to find a legal GPL loophole is not considering
> the root of the situation and that the GPL is an effect, not a cause.
>
> A point someone else made that I feel compelled to reiterate is that it
> is the nature of the Linux development model and the attitude of the
> developers which has made Linux what it is and has made you want to use it.
>
> But I have another point.  You are not dealing with a license here.  The
> license is there to satisfy lawyers and make clear the INTENT of the
> authors.  The keyword here is INTENT in that someone who has developed
> something is telling you how they feel about the use of their work
> which, under many circumstances, they could have chosen not to share
> with you.  What you are dealing with is real people who have put an
> incredible amount of time and effort into developing Linux.  Those
> people, to whom you owe much respect for sharing their contributions,
> have decided that their software should be used with certain
> restrictions, that being the GPL.  If you abuse Linux, it is not the GPL
> that you are insulting, but the people who developed Linux.
>
> The GPL_ONLY restriction for driver modules may seem unfair, but it is
> far from it.  There are both valid technical and philosophical reasons
> for working that way.  No one forces you to use Linux, and when you made
> the choice to use it, you are entering into a community with a specific
> philosophy.  You know that philosophy in advance, so when you discover
> that you have a restruction you don't like, you have no room to complain.
>
> As someone said, if you want to write drivers for a UNIX which does not
> have these restrictions, there are plenty of commercial UNIXes out there
> that you have to choose from.  The fact that they are perhaps less
> popular is one reason why Linux developers do not want to imitate them.
>
> So, the discussions about finding ways to make a non-GPL driver look
> like a GPL driver and get away with it legally are all moot.  The reason
> you should not violate this is because the architects of Linux do not
> want you to.  If you choose to violate that, you are being unethical,
> pure and simple.  Or more to the point, you're being an asshole to a lot
> of hard-working people who have chosen to freely share their work with
> you.  Since they are the authors and you are not, their feelings about
> their softare are more important than yours.  You may be able to screw
> them over and get away with it -- people do that sort of thing all the
> time -- but the fact that you may find a legal loophole doesn't make you
> any less of an abject asshole.
>
> In short:  Be honorable.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: People, not GPL  [was: Re: Driver Model]
  2003-09-10 20:34                 ` David Schwartz
@ 2003-09-12 19:55                   ` Timothy Miller
  2003-09-13 14:18                     ` Geert Uytterhoeven
  0 siblings, 1 reply; 44+ messages in thread
From: Timothy Miller @ 2003-09-12 19:55 UTC (permalink / raw)
  To: David Schwartz; +Cc: Pascal Schmidt, linux-kernel



David Schwartz wrote:
>>But I have another point.  You are not dealing with a license here.  The
>>license is there to satisfy lawyers and make clear the INTENT of the
>>authors.  The keyword here is INTENT in that someone who has developed
>>something is telling you how they feel about the use of their work
>>which, under many circumstances, they could have chosen not to share
>>with you.  What you are dealing with is real people who have put an
>>incredible amount of time and effort into developing Linux.  Those
>>people, to whom you owe much respect for sharing their contributions,
>>have decided that their software should be used with certain
>>restrictions, that being the GPL.  If you abuse Linux, it is not the GPL
>>that you are insulting, but the people who developed Linux.
> 
> 
> 	In other words, information does not want to be free. You shouldn't use
> code the way you want to use it but the way the authors want you to use it.
> After all, they didn't have to give it to you if they didn't want to.

EXACTLY.  Fortunately in this case, the authors place few restrictions 
on your usage.  Indeed, the "restrictions" are more a matter of being 
nice to the people who made the stuff you're using.

You're stuck thinking about "law" and "rules".  I'm thinking instead 
about "honor".

One of the (unresolved) discussions I had with RMS involved the role of 
the author.  He believes that the user is more important than the 
author.  I believe the author is more important, because had the author 
not written what the user has, then the user would not have it! 
Actually, he partially agrees with me but does not feel that the author 
should be able to apply restrictions (IF the work is PUBLISHED).


> 	However, Richard Stallman does not agree with this view. It's his view that
> if the authors chose to give you the code, you can use it any way you want
> to, regardless of how the authors feel about that type of usage. This is why
> he created the GPL.

But it seems clear to me that the GPL places some very strong 
restrictions on your usage.  Those restrictions are that although your 
specific usage of the code doesn't matter, anything (published) that you 
derive from GPL work MUST also be published under GPL.

So my point is that when someone publishes something under GPL that you 
find useful, give respect to the person who wrote it by obeying the 
spirit of the license.  But it is not the license that is important as 
that the author chose to release his work under those terms.  People, 
not rules; honor, not law.

There are other licenses besides the GPL.  When authors release under 
those terms, you should respect those terms as well.  The thing that 
sets the GPL apart from, say, closed-source licensing is that the GPL is 
based on a system of honor, while proprietary systems can (and often do) 
become unfairly restrictive to the users.

> 
> 
>>So, the discussions about finding ways to make a non-GPL driver look
>>like a GPL driver and get away with it legally are all moot.  The reason
>>you should not violate this is because the architects of Linux do not
>>want you to.
> 
> 
> 	If you really believe that the Linux authors wished to continue to control
> how their code was used, you have to think that they were stupid to release
> the code under the GPL. After all, the whole point of the GPL is to prohibit
> such restrictions. The reason Linux is under the GPL is so that developers
> *can't* put restrictions on how the package can be used. That's the "open"
> in open source.

The restrictions they are applying are the only ones in the GPL.  It was 
smart for them to use the GPL because it is compatible with their 
wishes.  Follow the GPL not because the GPL is a copyright license, but 
because you are grateful for the efforts of those who published under GPL.

Furthermore, if someone publishes under GPL, and your insult them, they 
may become less willing to release under GPL, thereby limiting your 
ability to rip them off.

Also, just to be pedantic, because you mentioned RMS, "open source" and 
"free software" are not the same thing.

> 
>>If you choose to violate that, you are being unethical,
>>pure and simple.  Or more to the point, you're being an asshole to a lot
>>of hard-working people who have chosen to freely share their work with
>>you.
> 
> 
> 	The person who tries to put other people's GPL'd works under his license
> restrictions is the asshole. I have contributed code to the Linux kernel
> under the GPL license (bonus points to anyone who can find my 25 lines of
> code or so). It is nobody else's right to add code to my code and add usage
> restrictions to it. The GPL expressly forbids this.

And I completely agree with all of this.  I'm getting the feeling that 
you and I don't actually disagree on any of this.  :)

The point of divergence is with regard to modules and the symbol 
restrictions for non-GPL drivers.  Here is a gray area where the GPL may 
not apply really.  These gray areas are where ethics and honor must come 
into play.

> 
>>Since they are the authors and you are not, their feelings about
>>their softare are more important than yours.
> 
> 
> 	I'm just baffled. You don't seem to understand at all why the Linux kernel
> is organized under the GPL. It's precisely so that some developers can't
> hijack the project and encumber the growing source base with usage and
> distribution restrictions.

Which is precisely why those authors placed Linux under the GPL.  If 
they didn't like that, they would be working on proprietary OS's.  I'm 
saying that people should respect the authors by honoring the GPL.

> 
>>You may be able to screw
>>them over and get away with it -- people do that sort of thing all the
>>time -- but the fact that you may find a legal loophole doesn't make you
>>any less of an abject asshole.
> 
> 
> 	The asshole is the person who thinks that they have the right to change the
> express wishes of all the other contributors to the kernel who chose to
> contribute to a project that operates under the GPL license. The GPL license
> is about there being no restrictions on usage.

Well, aside from the "it must remain free clause" (which I interpret as 
an important restriction), I agree with you.  That is to say, the 
"contributor" who hijacks the work of other contributors is being 
dishonorable, because he is not respecting the other contributors.

> 
>>In short:  Be honorable.
> 
> 
> 	I am. The hijackers are not.

Agreed.



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: People, not GPL  [was: Re: Driver Model]
  2003-09-12 19:55                   ` Timothy Miller
@ 2003-09-13 14:18                     ` Geert Uytterhoeven
  2003-09-13 17:58                       ` Alan Cox
  0 siblings, 1 reply; 44+ messages in thread
From: Geert Uytterhoeven @ 2003-09-13 14:18 UTC (permalink / raw)
  To: Timothy Miller; +Cc: David Schwartz, Pascal Schmidt, Linux Kernel Development

On Fri, 12 Sep 2003, Timothy Miller wrote:
> David Schwartz wrote:
> You're stuck thinking about "law" and "rules".  I'm thinking instead 
> about "honor".

Indeed. The GPL may not be perfect, but IMHO the GPL is the only way to make
sure everyone plays the game according to the rules. I.e. I give you something,
you can use it, but please play according to the rules of fair play.

BSD may look OK, but it doesn't protect against people who don't (want to) play
according to the rules.

> The point of divergence is with regard to modules and the symbol 
> restrictions for non-GPL drivers.  Here is a gray area where the GPL may 
> not apply really.  These gray areas are where ethics and honor must come 
> into play.

I consider binary-only modules some kind of loophole to avoid playing according
to the rules of fair play.

Unfortunately it seems to be almost impossible to design a license that forces
you to play according to the rules of fair play, and doesn't have any
loopholes or grey areas.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: People, not GPL  [was: Re: Driver Model]
  2003-09-13 14:18                     ` Geert Uytterhoeven
@ 2003-09-13 17:58                       ` Alan Cox
  0 siblings, 0 replies; 44+ messages in thread
From: Alan Cox @ 2003-09-13 17:58 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Timothy Miller, David Schwartz, Pascal Schmidt, Linux Kernel Development

On Sad, 2003-09-13 at 15:18, Geert Uytterhoeven wrote:
> Unfortunately it seems to be almost impossible to design a license that forces
> you to play according to the rules of fair play, and doesn't have any
> loopholes or grey areas.

Fair play is awfully hard to define. Fair use likewise. Currently almost
all countries legal systems have a clear notion of "derived work", and
copyright (unlike patents) extends no further. That limits how far the
GPL can extend, but its the same line in the sand (well fuzzy patch in
the sand in truth) that stops a lot of other things you wouldnt like.
Which and what modules count as derivative works is a lawyer question
and not it seems a trivial one.

Patents do extend beyond just the derived work and since Linux contains
patented material with rights granted for GPL use as per the GPL(but not
for non GPL use) there is a murky area around modules and patents - one
example of the issues that raises being RTLinux.

Folks using binary modules may also find third party software licenses
invalid (eg the OpenMotif one)



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 17:38     ` Andre Hedrick
  2003-09-03 18:19       ` Alan Cox
@ 2003-09-04 12:40       ` Henning P. Schmiedehausen
  1 sibling, 0 replies; 44+ messages in thread
From: Henning P. Schmiedehausen @ 2003-09-04 12:40 UTC (permalink / raw)
  To: linux-kernel

Andre Hedrick <andre@linux-ide.org> writes:

>why many people have earned the title of "GPL NAZIS".

Godwin's law. You lost.

	Regards
		Henning

-- 
Dipl.-Inf. (Univ.) Henning P. Schmiedehausen          INTERMETA GmbH
hps@intermeta.de        +49 9131 50 654 0   http://www.intermeta.de/

Java, perl, Solaris, Linux, xSP Consulting, Web Services 
freelance consultant -- Jakarta Turbine Development  -- hero for hire

"Dominate!! Dominate!! Eat your young and aggregate! I have grotty silicon!" 
      -- AOL CD when played backwards  (User Friendly - 200-10-15)

^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 22:41       ` David Schwartz
@ 2003-09-04 11:03         ` Alan Cox
  0 siblings, 0 replies; 44+ messages in thread
From: Alan Cox @ 2003-09-04 11:03 UTC (permalink / raw)
  To: David Schwartz
  Cc: Stuart MacDonald, root, 'James Clark', Linux Kernel Mailing List

On Mer, 2003-09-03 at 23:41, David Schwartz wrote:
> 	Next I'm going to add some new features to Linux and my code will check for
> a license certificate before it runs. I'll use the DMCA to protect the
> license check but I'll distribute the source code just like the GPL requires
> me to.

Tivo already do this.


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 14:57     ` Alan Cox
  2003-09-03 15:13       ` Stuart MacDonald
@ 2003-09-03 22:41       ` David Schwartz
  2003-09-04 11:03         ` Alan Cox
  1 sibling, 1 reply; 44+ messages in thread
From: David Schwartz @ 2003-09-03 22:41 UTC (permalink / raw)
  To: Alan Cox, Stuart MacDonald
  Cc: root, 'James Clark', Linux Kernel Mailing List


> On Mer, 2003-09-03 at 15:36, Stuart MacDonald wrote:
> > If the MODULE_LICENSE() macro is what determines taint, what's to
> > prevent a company from compiling their driver in their own kernel tree
> > with that macro and releasing it binary-only? Wouldn't that module
> > then be taint-free?

> They would be representing their module is GPL when its not, obtaining
> services by deceving people (3rd party support) and if they used _GPL
> symbols probably violating the DMCA by bypassing a digital rights
> system.

	Holy crap! You've totally pegged my hypocrisy meter.

	It is an outright blatant violation of the GPL to build use limitations
into GPL'd works and then use the DMCA to prevent people from removing or
bypassing those limitations.

	Next I'm going to add some new features to Linux and my code will check for
a license certificate before it runs. I'll use the DMCA to protect the
license check but I'll distribute the source code just like the GPL requires
me to.

	No, the GPL does not require derived works to be GPL'd. No, the GPL does
not allow you to impose additional usage restrictions and use the DMCA to
prohibit people from modifying the code to use it the way they want.

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 16:58             ` Alan Cox
@ 2003-09-03 18:21               ` Jeff Garzik
  0 siblings, 0 replies; 44+ messages in thread
From: Jeff Garzik @ 2003-09-03 18:21 UTC (permalink / raw)
  To: Alan Cox
  Cc: Stuart MacDonald, 'Mariusz Zielinski',
	root, 'James Clark', 'Linux Kernel Mailing List'

Alan Cox wrote:
> On Mer, 2003-09-03 at 16:50, Stuart MacDonald wrote:
> 
>>From: Mariusz Zielinski [mailto:levi@wp-sa.pl] 
>>
>>>Realtek 8180L wlan chipset driver.
>>
>>From:
>>http://www.realtek.com.tw/downloads/downloads1-3.aspx?series=16&Software=True
>>
>>These drivers are all source and appear to be all GPLed.
> 
> 
> Only part source so realtek need a little re-education to make them fix
> the drivers. Someone who deals with realtek drivers (Jeff Garzik ?) care
> to start a polite initial dialog ?


Maybe I'm blind but I don't see 8180 wireless support at all there.

They have for a driver whose zipfile is called "8139cp".  You unpack it 
and it's an ancient 8139too.c with 8139C+ support added :)

But no 8180 support?

	Jeff




^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 17:38     ` Andre Hedrick
@ 2003-09-03 18:19       ` Alan Cox
  2003-09-03 18:15         ` Andre Hedrick
  2003-09-04 12:40       ` Henning P. Schmiedehausen
  1 sibling, 1 reply; 44+ messages in thread
From: Alan Cox @ 2003-09-03 18:19 UTC (permalink / raw)
  To: Andre Hedrick; +Cc: David Schwartz, James Clark, Linux Kernel Mailing List

On Mer, 2003-09-03 at 18:38, Andre Hedrick wrote:
> The fact that GPL_ONLY horse sh*t exists means there is a restriction on
> usage.  So "GPL_ONLY" has in effect violated GPL, by imposing restrictions
> of usage.  People will say that I am nuts and have spent to much time in
> the disk drive layers and my brain has not stopped spinning to reconnect
> to the stem.

Mummy there's a troll on the list again...

The GPL itself says that derivative works must be GPL. The GPL_ONLY
stuff just helps make that clear.


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 18:19       ` Alan Cox
@ 2003-09-03 18:15         ` Andre Hedrick
  0 siblings, 0 replies; 44+ messages in thread
From: Andre Hedrick @ 2003-09-03 18:15 UTC (permalink / raw)
  To: Alan Cox; +Cc: David Schwartz, James Clark, Linux Kernel Mailing List



On Wed, 3 Sep 2003, Alan Cox wrote:

> On Mer, 2003-09-03 at 18:38, Andre Hedrick wrote:
> > The fact that GPL_ONLY horse sh*t exists means there is a restriction on
> > usage.  So "GPL_ONLY" has in effect violated GPL, by imposing restrictions
> > of usage.  People will say that I am nuts and have spent to much time in
> > the disk drive layers and my brain has not stopped spinning to reconnect
> > to the stem.
> 
> Mummy there's a troll on the list again...
> 
> The GPL itself says that derivative works must be GPL. The GPL_ONLY
> stuff just helps make that clear.
> 

Gee I should follow other peoples advice about it takes two idiots to
argue in public, and not reply to the "troll bait".

So I wait for your political crap and ideas of making it impossible for
businesses with IP and property that is not and will never be open to work
inside or with Linux.

So with your bait and troll rants, I will challenge you and the rest of
the GPL only pinheads, to the pre-loader module issue which is gpl'd.

What are you going to do now?  Sue, send laywers, please I invite and beg
you to do so.  The "freed_symbols" project just got energized!

Cheers,

Andre

PS I am bold enough to sign my name to such issues ...


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 16:02             ` Mariusz Zielinski
@ 2003-09-03 17:58               ` Stuart MacDonald
  0 siblings, 0 replies; 44+ messages in thread
From: Stuart MacDonald @ 2003-09-03 17:58 UTC (permalink / raw)
  To: 'Mariusz Zielinski'; +Cc: 'Linux Kernel Mailing List'

From: linux-kernel-owner@vger.kernel.org 
> On Wednesday 03 of September 2003 17:50, Stuart MacDonald wrote:
> http://www.realtek.com.tw/downloads/downloads1-3.aspx?series=1
> 6&Software=Tr
> 
> Look at
> http://www.realtek.com.tw/downloads/downloads1-3.aspx?lineid=2
> 002111&famid=2002111&series=2002121&Software=True

Indeed, I was fooled. The Quick Link download on the sidebar was
static, not dynamic (figured it would update appropriately when I
clicked on the 8180 link from the homepage).

..Stu


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03  0:20   ` David Schwartz
@ 2003-09-03 17:38     ` Andre Hedrick
  2003-09-03 18:19       ` Alan Cox
  2003-09-04 12:40       ` Henning P. Schmiedehausen
  0 siblings, 2 replies; 44+ messages in thread
From: Andre Hedrick @ 2003-09-03 17:38 UTC (permalink / raw)
  To: David Schwartz; +Cc: James Clark, linux-kernel


On Tue, 2 Sep 2003, David Schwartz wrote:

> 
> 	I agree with you, except for the one place where you've contradicted
> yourself:
> 
> > If you are an embedded space widget.  Apply thumb to nose and wiggle
> > fingers.  Provided you ship the source code you modify in the kernel, and
> > I do mean all of it, use the short cut to clobber the issues in module.h.
> > When they scream and complain about, this violates intent, ask them are
> > they issuing a restriction on the usage of the GPL kernel?  If they do not
> > permit one to use it under GPL them the kernel itself is in violation.
> 
> 	In other words, you cannot release something under the GPL and
> simultaneously restrict its use.

You have made my points even clearer.

The fact that GPL_ONLY horse sh*t exists means there is a restriction on
usage.  So "GPL_ONLY" has in effect violated GPL, by imposing restrictions
of usage.  People will say that I am nuts and have spent to much time in
the disk drive layers and my brain has not stopped spinning to reconnect
to the stem.

> > Now back to "tainting", if the politics were such to cause all modules
> > which are not GPL to be rejected then the game is over.  Because the
> > kernel does not reject loading, it by default approves of closed source
> > binary modules.  One could use the means of taint-testing to accept or
> > reject, regardless of the original intent.  Many have and will make the
> > argument the kernel has the ability to reject closed source and it choose
> > to accept.
> 
> 	So no, the kernel does not have the ability to reject closed source. That
> would be an additional restriction upon use that the GPL does not allow you
> to impose.

Exactly!

I think it is about time to start http://www.ungpl.com/ however that is a
gas and pipe line already, which gives a broader meaning to the what and
why many people have earned the title of "GPL NAZIS".

Yeah, I said it and it is flamebait.  I am pulling out some marshmellows
to cook as I wait for the roasting fireballs to come my way.

I am not here to make friends, just promote Linux for business and
commerial usage and the direction today is wrong period.  I will not
debate the point, this is my opinion and it is correct.

Cheers,

Andre

PS: any references to "you" is a general to the mailing list and not to
any individual.


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 15:50           ` Stuart MacDonald
  2003-09-03 16:02             ` Mariusz Zielinski
@ 2003-09-03 16:58             ` Alan Cox
  2003-09-03 18:21               ` Jeff Garzik
  1 sibling, 1 reply; 44+ messages in thread
From: Alan Cox @ 2003-09-03 16:58 UTC (permalink / raw)
  To: Stuart MacDonald
  Cc: 'Mariusz Zielinski', root, 'James Clark',
	'Linux Kernel Mailing List'

On Mer, 2003-09-03 at 16:50, Stuart MacDonald wrote:
> From: Mariusz Zielinski [mailto:levi@wp-sa.pl] 
> > Realtek 8180L wlan chipset driver.
> 
> From:
> http://www.realtek.com.tw/downloads/downloads1-3.aspx?series=16&Software=True
> 
> These drivers are all source and appear to be all GPLed.

Only part source so realtek need a little re-education to make them fix
the drivers. Someone who deals with realtek drivers (Jeff Garzik ?) care
to start a polite initial dialog ?




^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 15:50           ` Stuart MacDonald
@ 2003-09-03 16:02             ` Mariusz Zielinski
  2003-09-03 17:58               ` Stuart MacDonald
  2003-09-03 16:58             ` Alan Cox
  1 sibling, 1 reply; 44+ messages in thread
From: Mariusz Zielinski @ 2003-09-03 16:02 UTC (permalink / raw)
  To: Stuart MacDonald; +Cc: 'Linux Kernel Mailing List'

On Wednesday 03 of September 2003 17:50, Stuart MacDonald wrote:
> From: Mariusz Zielinski [mailto:levi@wp-sa.pl]
>
> > Realtek 8180L wlan chipset driver.
>
> From:
> http://www.realtek.com.tw/downloads/downloads1-3.aspx?series=16&Software=Tr
>ue
>
> These drivers are all source and appear to be all GPLed.

Look at
http://www.realtek.com.tw/downloads/downloads1-3.aspx?lineid=2002111&famid=2002111&series=2002121&Software=True

Archive:  rh90-8180(120).zip
 Length   Method    Size  Ratio   Date   Time   CRC-32    Name
--------  ------  ------- -----   ----   ----   ------    ----
    2150  Defl:N      769  64%  07-24-03 10:30  bdcbb2db  release/Makefile
  216130  Defl:N    84093  61%  07-24-03 10:30  f6e934c9  release/priv_part.o
                                                          ^^^^^^^^^^^^^^^^^^^
    1503  Defl:N      548  64%  07-24-03 10:30  aa55c41c  release/r8180_export.h
   17834  Defl:N     3524  80%  07-24-03 10:30  b00831ae  release/r8180_if.c
    4488  Defl:N     1278  72%  07-24-03 10:30  00e6785f  release/r8180_if.h
   13319  Defl:N     2811  79%  07-24-03 10:30  1ad0ac11  release/r8180_pci_init.c
                                                          ^^^^^^^^^^^^^^^^^^^^^^^^
#cat r8180_pci_init.c | grep MODULE_LICENSE
MODULE_LICENSE("GPL");

     528  Defl:N      321  39%  07-24-03 10:30  9fe4dafc  release/r8180_pci_init.h
    8722  Defl:N     2028  77%  07-24-03 10:30  580d8c16  release/r8180_type.h
    5072  Defl:N     1709  66%  07-24-03 10:30  90348255  release/readme
     529  Defl:N      320  40%  07-24-03 10:30  aafe3723  release/rls_note_0724
     155  Defl:N      116  25%  07-24-03 10:30  6d3018fc  release/wlandown
     587  Defl:N      266  55%  07-24-03 10:30  763d2e5f  release/wlanup
--------          -------  ---                            -------
  271017            97783  64%                            12 files

-- 
Mariusz Zielinski

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 15:33         ` Mariusz Zielinski
  2003-09-03 15:50           ` Stuart MacDonald
@ 2003-09-03 15:50           ` Mariusz Zielinski
  1 sibling, 0 replies; 44+ messages in thread
From: Mariusz Zielinski @ 2003-09-03 15:50 UTC (permalink / raw)
  To: Stuart MacDonald; +Cc: 'Linux Kernel Mailing List'

On Wednesday 03 of September 2003 17:33, Mariusz Zielinski wrote:

> > Any examples off the top of your head? I'm curious.
> Realtek 8180L wlan chipset driver.
This is "bad example" ( closed source and GPL license ). Good one is nvidia 
( MODULE_LICENSE("NVIDIA"); ).

-- 
...and all that jazz
Mariusz Zielinski - Wirtualna Polska

^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 15:33         ` Mariusz Zielinski
@ 2003-09-03 15:50           ` Stuart MacDonald
  2003-09-03 16:02             ` Mariusz Zielinski
  2003-09-03 16:58             ` Alan Cox
  2003-09-03 15:50           ` Mariusz Zielinski
  1 sibling, 2 replies; 44+ messages in thread
From: Stuart MacDonald @ 2003-09-03 15:50 UTC (permalink / raw)
  To: 'Mariusz Zielinski', 'Alan Cox'
  Cc: root, 'James Clark', 'Linux Kernel Mailing List'

From: Mariusz Zielinski [mailto:levi@wp-sa.pl] 
> Realtek 8180L wlan chipset driver.

From:
http://www.realtek.com.tw/downloads/downloads1-3.aspx?series=16&Software=True

These drivers are all source and appear to be all GPLed.

..Stu


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 15:13       ` Stuart MacDonald
@ 2003-09-03 15:33         ` Mariusz Zielinski
  2003-09-03 15:50           ` Stuart MacDonald
  2003-09-03 15:50           ` Mariusz Zielinski
  0 siblings, 2 replies; 44+ messages in thread
From: Mariusz Zielinski @ 2003-09-03 15:33 UTC (permalink / raw)
  To: Stuart MacDonald, 'Alan Cox'
  Cc: root, 'James Clark', 'Linux Kernel Mailing List'

On Wednesday 03 of September 2003 17:13, Stuart MacDonald wrote:
> From: linux-kernel-owner@vger.kernel.org
>
> > You could equally ask the same question about any other measure - its
> > no different to "I could shoot the shopkeeper and not pay", its an
> > incentive to behave, a way for developers to make it clear their code
>
> That's what I figured, I just wanted to check.
>
> > isnt for stealing and without denying people the choice of what they
> > run. The reputable vendors on the whole not only seem to obey it but
> > actually put informative MODULE_LICENSE() tags into their code for
> > their proprietary licenses.
>
> Any examples off the top of your head? I'm curious.

Realtek 8180L wlan chipset driver.

-- 
...and all that jazz
Mariusz Zielinski - Wirtualna Polska

^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 14:36   ` Stuart MacDonald
  2003-09-03 14:52     ` Jan-Benedict Glaw
  2003-09-03 14:57     ` Alan Cox
@ 2003-09-03 15:22     ` Richard B. Johnson
  2 siblings, 0 replies; 44+ messages in thread
From: Richard B. Johnson @ 2003-09-03 15:22 UTC (permalink / raw)
  To: Stuart MacDonald; +Cc: 'James Clark', linux-kernel

On Wed, 3 Sep 2003, Stuart MacDonald wrote:

> From: linux-kernel-owner@vger.kernel.org
> > [mailto:linux-kernel-owner@vger.kernel.org] On Behalf Of
> > Richard B. Johnson
> > sources are available. If the driver does not contain the appropriate
> > MODULE_LICENSE() string, then several tools will show "tainted" so
>
> If the MODULE_LICENSE() macro is what determines taint, what's to
> prevent a company from compiling their driver in their own kernel tree
> with that macro and releasing it binary-only? Wouldn't that module
> then be taint-free?
>
> ..Stu
>

Well yes! You can do:

File: License.c
/*
 *
 *   Everything in this file (only) is released under the so-called
 *   GNU Public License, incorporated herein by reference.
 *
 *   Now, we just link this with any proprietary code and everybody
 *   but the lawyers are happy.
 */
#ifndef __KERNEL__
#define __KERNEL__
#endif
#ifndef MODULE
#define MODULE
#endif
#include <linux/module.h>
#if defined(MODULE_LICENSE)
MODULE_LICENSE("GPL");
#endif

You can link the output of this file with the binary-only file
and get rid of the 'tainted' message.

gcc -I./usr/src/linux/`uname-r` -o license.o License.c
ld -i -o driver.o binary.o license.o

....bbuutttt.... Now, if the kernel gets dorked because
a binary-only module is broken, the binary-only module will
not get fixed! The kernel developers need to know if the
source-code is available for everything that's in the kernel
when the kernel croaks. They need to examine the code of
every suspect module as well as the kernel code in the area
of interest. Note that a module inside the kernel is free to
destroy __everything__. A wild pointer in user-mode just
seg-faults, in kernel mode it can scribble over your hard-
disk and you won't even know it until you try to edit your
movie script that you've been working on for 20 years.

Currently, once an oops is reported and developers see the
'tainted' message, they ask the reporter to remove the module
that is producing that message. If the machine can't run without
it, they ask the person to get the help of the module provider.
Often "ask" is not too kind. Usually, it's a snide remark
by persons who are not trained in public affairs so this
may tend to cause some friction. However, remember that the
wizards that gave a lot of their time and effort to kernel
development don't really like to have some secret module
screwing up their work.

Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (794.73 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 14:57     ` Alan Cox
@ 2003-09-03 15:13       ` Stuart MacDonald
  2003-09-03 15:33         ` Mariusz Zielinski
  2003-09-03 22:41       ` David Schwartz
  1 sibling, 1 reply; 44+ messages in thread
From: Stuart MacDonald @ 2003-09-03 15:13 UTC (permalink / raw)
  To: 'Alan Cox'
  Cc: root, 'James Clark', 'Linux Kernel Mailing List'

From: linux-kernel-owner@vger.kernel.org 
> You could equally ask the same question about any other measure - its
> no different to "I could shoot the shopkeeper and not pay", its an
> incentive to behave, a way for developers to make it clear their code

That's what I figured, I just wanted to check.

> isnt for stealing and without denying people the choice of what they
> run. The reputable vendors on the whole not only seem to obey it but
> actually put informative MODULE_LICENSE() tags into their code for
> their proprietary licenses.

Any examples off the top of your head? I'm curious.

..Stu


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-03 14:36   ` Stuart MacDonald
  2003-09-03 14:52     ` Jan-Benedict Glaw
@ 2003-09-03 14:57     ` Alan Cox
  2003-09-03 15:13       ` Stuart MacDonald
  2003-09-03 22:41       ` David Schwartz
  2003-09-03 15:22     ` Richard B. Johnson
  2 siblings, 2 replies; 44+ messages in thread
From: Alan Cox @ 2003-09-03 14:57 UTC (permalink / raw)
  To: Stuart MacDonald; +Cc: root, 'James Clark', Linux Kernel Mailing List

On Mer, 2003-09-03 at 15:36, Stuart MacDonald wrote:
> If the MODULE_LICENSE() macro is what determines taint, what's to
> prevent a company from compiling their driver in their own kernel tree
> with that macro and releasing it binary-only? Wouldn't that module
> then be taint-free?

They would be representing their module is GPL when its not, obtaining
services by deceving people (3rd party support) and if they used _GPL
symbols probably violating the DMCA by bypassing a digital rights
system.

In practice we've had two cases we know about where someone tried this,
one at least was almost certainly an accident the other one the vendor
seems to now have fixed after the threat of acute bad publicity.

You could equally ask the same question about any other measure - its
no different to "I could shoot the shopkeeper and not pay", its an
incentive to behave, a way for developers to make it clear their code
isnt for stealing and without denying people the choice of what they
run. The reputable vendors on the whole not only seem to obey it but
actually put informative MODULE_LICENSE() tags into their code for
their proprietary licenses.


Alan


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-03 14:36   ` Stuart MacDonald
@ 2003-09-03 14:52     ` Jan-Benedict Glaw
  2003-09-03 14:57     ` Alan Cox
  2003-09-03 15:22     ` Richard B. Johnson
  2 siblings, 0 replies; 44+ messages in thread
From: Jan-Benedict Glaw @ 2003-09-03 14:52 UTC (permalink / raw)
  To: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1457 bytes --]

On Wed, 2003-09-03 10:36:16 -0400, Stuart MacDonald <stuartm@connecttech.com>
wrote in message <002301c37228$bbc89950$294b82ce@stuartm>:
> From: linux-kernel-owner@vger.kernel.org 
> > [mailto:linux-kernel-owner@vger.kernel.org] On Behalf Of 
> > Richard B. Johnson
> > sources are available. If the driver does not contain the appropriate
> > MODULE_LICENSE() string, then several tools will show "tainted" so
> 
> If the MODULE_LICENSE() macro is what determines taint, what's to
> prevent a company from compiling their driver in their own kernel tree
> with that macro and releasing it binary-only? Wouldn't that module
> then be taint-free?

To use it, you've to call it like

	MODULE_LICENSE("GPL");

The string (license name) you supply is stored into the module binary
and checked ad module load time. Either it's "GPL" (or a few others
IIRC) or it isn't. If it is, the module is GPL and (after you've shipped
the module) any user can legally ask for sources (and you've to ship
them). If it isn't GPL (or the other accepted variants), it'll taint the
kernel. That'll tell us to not look at oopses, though...

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw@lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
      ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-02 20:44 ` Richard B. Johnson
@ 2003-09-03 14:36   ` Stuart MacDonald
  2003-09-03 14:52     ` Jan-Benedict Glaw
                       ` (2 more replies)
  0 siblings, 3 replies; 44+ messages in thread
From: Stuart MacDonald @ 2003-09-03 14:36 UTC (permalink / raw)
  To: root, 'James Clark'; +Cc: linux-kernel

From: linux-kernel-owner@vger.kernel.org 
> [mailto:linux-kernel-owner@vger.kernel.org] On Behalf Of 
> Richard B. Johnson
> sources are available. If the driver does not contain the appropriate
> MODULE_LICENSE() string, then several tools will show "tainted" so

If the MODULE_LICENSE() macro is what determines taint, what's to
prevent a company from compiling their driver in their own kernel tree
with that macro and releasing it binary-only? Wouldn't that module
then be taint-free?

..Stu


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 18:43 James Clark
                   ` (3 preceding siblings ...)
  2003-09-02 23:52 ` Andre Hedrick
@ 2003-09-03 13:10 ` Alan Cox
  4 siblings, 0 replies; 44+ messages in thread
From: Alan Cox @ 2003-09-03 13:10 UTC (permalink / raw)
  To: jimwclark; +Cc: Linux Kernel Mailing List

On Maw, 2003-09-02 at 19:43, James Clark wrote:
> 3. Will the practice of deliberately breaking some binary only 'tainted' 
> modules prevent take up of Linux. Isn't this taking things too far?

tainted doesn't break anything. tainted marks modules so we know they
are unsupported and every vendor, developer and the like can throw your
reports into the bitbucket. The binary vendor has our code we don;t have
theirs so they can go fix it.

As to "too far", the GPL is quite explicit and most people contributed
code on its basis. So its very unlikely that any binary only module is
legal in the first place. There is FSF code in the kernel, merged by
others and the FSF certainly feel that way.

If you want to run a binary unix system I'd recommend Mac OSx - its
rather nice.

Alan


^ permalink raw reply	[flat|nested] 44+ messages in thread

* RE: Driver Model
  2003-09-02 23:52 ` Andre Hedrick
@ 2003-09-03  0:20   ` David Schwartz
  2003-09-03 17:38     ` Andre Hedrick
  0 siblings, 1 reply; 44+ messages in thread
From: David Schwartz @ 2003-09-03  0:20 UTC (permalink / raw)
  To: Andre Hedrick, James Clark; +Cc: linux-kernel


	I agree with you, except for the one place where you've contradicted
yourself:

> If you are an embedded space widget.  Apply thumb to nose and wiggle
> fingers.  Provided you ship the source code you modify in the kernel, and
> I do mean all of it, use the short cut to clobber the issues in module.h.
> When they scream and complain about, this violates intent, ask them are
> they issuing a restriction on the usage of the GPL kernel?  If they do not
> permit one to use it under GPL them the kernel itself is in violation.

	In other words, you cannot release something under the GPL and
simultaneously restrict its use.

> Now back to "tainting", if the politics were such to cause all modules
> which are not GPL to be rejected then the game is over.  Because the
> kernel does not reject loading, it by default approves of closed source
> binary modules.  One could use the means of taint-testing to accept or
> reject, regardless of the original intent.  Many have and will make the
> argument the kernel has the ability to reject closed source and it choose
> to accept.

	So no, the kernel does not have the ability to reject closed source. That
would be an additional restriction upon use that the GPL does not allow you
to impose.

	DS



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 18:43 James Clark
                   ` (2 preceding siblings ...)
  2003-09-02 21:29 ` Patrick Mochel
@ 2003-09-02 23:52 ` Andre Hedrick
  2003-09-03  0:20   ` David Schwartz
  2003-09-03 13:10 ` Alan Cox
  4 siblings, 1 reply; 44+ messages in thread
From: Andre Hedrick @ 2003-09-02 23:52 UTC (permalink / raw)
  To: James Clark; +Cc: linux-kernel


## The unoffical insider's guide to thwart the gpl_only garbage       ##
## First how to finally become a total outcast from being in/near the ##
## inner circle to exile.                                             ##

The soul intent of "GPL_ONLY" is to prevent binary modules.
The soul intent of "tainting" is to ignore the people who want a choice.

Now two sides to the sword with the above:

Create a pre-loading module to wrapper all the needed "GPL_ONLY" symbols
which rightly belong to the unprotected API.

-------------------------------------------

/*
 * freed_symbols.h
 *
 * The Free Stolen Symbols module.
 * Licensed under GPL and source code is free.
 */

extern int freed_xxxxx ( ... );

-------------------------------------------

/*
 * freed_symbols.c
 *
 * The Free Stolen Symbols module.
 * Licensed under GPL and source code is free.
 */

... blah blah, standard kernel module stuff and setup ...

int freed_xxxxx ( ... )
{
	return xxxxx( ... );
}

EXPORT_SYMBOL(freed_xxxxx);

... blah blah, standard kernel module stuff and clean up ...

LICENSE("GPL");

-------------------------------------------

Now wash rinse repeat for all the symbols you need to create a pre-loader
module to return to usage all the symbols you need.

First you will get people complaining this violates intent, kindly give
them the middle finger, two fingers, fore arm, or whatever non verbal
expression you wish.  Second envite them to get a lawyer.  Third, when
they tell you to stop, ask if they are imposing restrictions on GPL for
terms of usage.  If they are notify them they are in violation of the
license.

If you are an embedded space widget.  Apply thumb to nose and wiggle
fingers.  Provided you ship the source code you modify in the kernel, and
I do mean all of it, use the short cut to clobber the issues in module.h.
When they scream and complain about, this violates intent, ask them are
they issuing a restriction on the usage of the GPL kernel?  If they do not
permit one to use it under GPL them the kernel itself is in violation.

The short version:  It is a game of politics, where people what it both
ways.  They want it to be open source and restict the usage.

Now back to "tainting", if the politics were such to cause all modules
which are not GPL to be rejected then the game is over.  Because the
kernel does not reject loading, it by default approves of closed source
binary modules.  One could use the means of taint-testing to accept or
reject, regardless of the original intent.  Many have and will make the
argument the kernel has the ability to reject closed source and it choose
to accept.

Well I have now alienated myself from the world of open source, but
someone has to show who intellectually dishonestity in the politics.

This goes even further in some folks in the embedded appliance who will
digitally sign binary kernels against their module suite to prevent one
from compiling an identical kernel but unsigned, and the modules will not
load.  This is a hot topic along with distos adding into their big dollar
distributions extra export_symbol hooks for things that do not exist in
the source tree shipped.

There is more, but you can discover all the left-right speak on your own.

Cheers,

Andre

PS: Did this earn my way back into exile again, damn the truth hurts!


On Tue, 2 Sep 2003, James Clark wrote:

> 1. Will the move to a more uniform driver model in 2.6 increase the chances of 
> a given binary driver working with a 2.6+ kernel. 
> 
> 2. Will the new model reduce the use/need for kernel modules. Would this be a 
> good thing if functionality could be implemented in a driver instead of a 
> module.
> 
> 3. Will the practice of deliberately breaking some binary only 'tainted' 
> modules prevent take up of Linux. Isn't this taking things too far?
> 
> James
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 1. Will the move to a more uniform driver model in 2.6 increase the chances of 
> a given binary driver working with a 2.6+ kernel. 
> 
> 2. Will the new model reduce the use/need for kernel modules. Would this be a 
> good thing if functionality could be implemented in a driver instead of a 
> module.
> 
> 3. Will the practice of deliberately breaking some binary only 'tainted' 
> modules prevent take up of Linux. Isn't this taking things too far?
> 
> James
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 21:44   ` James Clark
  2003-09-02 22:05     ` Greg KH
  2003-09-02 22:08     ` Robert Love
@ 2003-09-02 22:39     ` Jamie Lokier
  2 siblings, 0 replies; 44+ messages in thread
From: Jamie Lokier @ 2003-09-02 22:39 UTC (permalink / raw)
  To: James Clark; +Cc: linux-kernel, Patrick Mochel

James Clark wrote:
> Would a more rigid 'plugin' interface and the concequent move from mainly 
> 'source' modules to binary 'plugins' (still with source-code available for 
> all to see) mean that (a) Kernel was smaller

No, it would undoubtedly make the kernel larger and slower.

> I love Linux but this seems to be holding it back...

Most of the authors of Linux would prefer a little holding back, if
the alternative was widespread binary-only drivers that they couldn't
debug or fix, or learn from, and a slower, larger kernel.

Of course we might be mistaken.

But please take a look at other kernels which _do_ offer a rigid
interface to binary plugins.  Then ask yourself what social phenomena
created the Linux which is exciting and useful as it is, that makes
you want to write drivers for it now instead of those other kernels.

-- Jamie

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 21:44   ` James Clark
  2003-09-02 22:05     ` Greg KH
@ 2003-09-02 22:08     ` Robert Love
  2003-09-02 22:39     ` Jamie Lokier
  2 siblings, 0 replies; 44+ messages in thread
From: Robert Love @ 2003-09-02 22:08 UTC (permalink / raw)
  To: jimwclark; +Cc: linux-kernel, Patrick Mochel

On Tue, 2003-09-02 at 17:44, James Clark wrote:

> Would a more rigid 'plugin' interface and the concequent move from mainly 
> 'source' modules to binary 'plugins' (still with source-code available for 
> all to see) mean that (a) Kernel was smaller (2) Had to be 
> released/recompiled less (4) Was EVEN more stable and (4) 'plugins' were more 
> portable across releases and easier to install ?

I do not think any of these implications are true, except (4).

A stable driver API would certainly imply (4).  But I see no relation to
(a) -- actually, an API would bring complications and thus bloat, if
anything.  I see no relation to (2).  And (3) just seems like a wild
guess.

I agree that (4) would be a good thing.  The problem is, its really not
what we have here today and not what any of the kernel developers want. 
95% of the drivers (and 100% of those that the kernel developers use)
_are_ source-based and in the tree, so why have a stable API for them?

In other words, yes, (4) is nice.  But not that nice, as a stable API
and driver interface implies a lot of other things that are not
necessarily good.

On the bright side, I do think that we will see a much more stable API
in 2.6.  2.4.n for n after Marcelo took over has also been stable.

	Robert Love



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 21:44   ` James Clark
@ 2003-09-02 22:05     ` Greg KH
  2003-09-02 22:08     ` Robert Love
  2003-09-02 22:39     ` Jamie Lokier
  2 siblings, 0 replies; 44+ messages in thread
From: Greg KH @ 2003-09-02 22:05 UTC (permalink / raw)
  To: James Clark; +Cc: linux-kernel, Patrick Mochel

On Tue, Sep 02, 2003 at 10:44:55PM +0100, James Clark wrote:
> 
> Would a more rigid 'plugin' interface and the concequent move from mainly 
> 'source' modules to binary 'plugins' (still with source-code available for 
> all to see) mean that (a) Kernel was smaller

No, we would have to support all versions of the APIs over time, making
the kernel larger and harder to maintain.

> (2) Had to be released/recompiled less 

No, release frequency would have nothing to do with this.

> (4) Was EVEN more stable and (4) 'plugins' were more portable across
> releases and easier to install ?

No.

> I love Linux but this seems to be holding it back...

Please read the FAQ and many discussions about this very topic in the
past in the archives for why the kernel does not have a stable API
within itself.

That being said, the ammount the API changes over time in a "stable"
kernel series is usually quite small.

I understand coming from the Windows world this seems odd, but after a
bit of time you will see why it is quite nice.

Good luck,

greg k-h

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 21:29 ` Patrick Mochel
@ 2003-09-02 21:44   ` James Clark
  2003-09-02 22:05     ` Greg KH
                       ` (2 more replies)
  0 siblings, 3 replies; 44+ messages in thread
From: James Clark @ 2003-09-02 21:44 UTC (permalink / raw)
  To: linux-kernel; +Cc: Patrick Mochel

Before I posted my original question I read Patrick's very helpful overview of 
the Driver Model (www.amc.com.au/lca/loopback/papers/ 
Patrick_Mochel/Patrick_Mochel.pdf). 

The reason I posed the question, as a newcomer to kernel development, moving 
from WIN32 DDK development (sorry!) to Linux is that I was very surprised by 
the module interface. 

Would a more rigid 'plugin' interface and the concequent move from mainly 
'source' modules to binary 'plugins' (still with source-code available for 
all to see) mean that (a) Kernel was smaller (2) Had to be 
released/recompiled less (4) Was EVEN more stable and (4) 'plugins' were more 
portable across releases and easier to install ?

I love Linux but this seems to be holding it back...

James



On Tuesday 02 Sep 2003 10:29 pm, Patrick Mochel wrote:
> > 1. Will the move to a more uniform driver model in 2.6 increase the
> > chances of a given binary driver working with a 2.6+ kernel.
>
> Not necessarily. A binary driver still needs to be compiled for a specific
> version of a kernel. And, if it's not already working, the new driver
> model definitely won't help. :)
>
> > 2. Will the new model reduce the use/need for kernel modules. Would this
> > be a good thing if functionality could be implemented in a driver instead
> > of a module.
>
> No, it will not reduce usage of modules. The driver model has nothing to
> do with whether something is compiled as a module or not.
>
> > 3. Will the practice of deliberately breaking some binary only 'tainted'
> > modules prevent take up of Linux. Isn't this taking things too far?
>
> This is a loaded question, but ultimately it's a vendor issue. Most people
> do and will use vendor kernels. What they do with their kernel interfaces
> and how well they support binary modules is their beef.
>
>
> 	Pat


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 18:43 James Clark
  2003-09-02 19:13 ` Robert Love
  2003-09-02 20:44 ` Richard B. Johnson
@ 2003-09-02 21:29 ` Patrick Mochel
  2003-09-02 21:44   ` James Clark
  2003-09-02 23:52 ` Andre Hedrick
  2003-09-03 13:10 ` Alan Cox
  4 siblings, 1 reply; 44+ messages in thread
From: Patrick Mochel @ 2003-09-02 21:29 UTC (permalink / raw)
  To: James Clark; +Cc: linux-kernel


> 1. Will the move to a more uniform driver model in 2.6 increase the chances of 
> a given binary driver working with a 2.6+ kernel. 

Not necessarily. A binary driver still needs to be compiled for a specific 
version of a kernel. And, if it's not already working, the new driver 
model definitely won't help. :) 

> 2. Will the new model reduce the use/need for kernel modules. Would this be a 
> good thing if functionality could be implemented in a driver instead of a 
> module.

No, it will not reduce usage of modules. The driver model has nothing to 
do with whether something is compiled as a module or not. 

> 3. Will the practice of deliberately breaking some binary only 'tainted'
> modules prevent take up of Linux. Isn't this taking things too far?

This is a loaded question, but ultimately it's a vendor issue. Most people 
do and will use vendor kernels. What they do with their kernel interfaces 
and how well they support binary modules is their beef. 


	Pat


^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 18:43 James Clark
  2003-09-02 19:13 ` Robert Love
@ 2003-09-02 20:44 ` Richard B. Johnson
  2003-09-03 14:36   ` Stuart MacDonald
  2003-09-02 21:29 ` Patrick Mochel
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 44+ messages in thread
From: Richard B. Johnson @ 2003-09-02 20:44 UTC (permalink / raw)
  To: James Clark; +Cc: linux-kernel

On Tue, 2 Sep 2003, James Clark wrote:

> 1. Will the move to a more uniform driver model in 2.6 increase the
> chances of
> a given binary driver working with a 2.6+ kernel.
>

Most changes to the kernel are made without any consideration
of a so-called binary drivers at all. FWIW all drivers are "binary".
If a file is created that was generated for a specific kernel version,
it will work on that kernel version whether or not the driver
sources are available. If the driver does not contain the appropriate
MODULE_LICENSE() string, then several tools will show "tainted" so
that kernel developers will not waste time attempting to find a problem
with a kernel that might be caused by a driver. If the driver has its
source-code released, shown by the appropriate MODULE_LICENSE() string,
then kernel developers may review that driver and fix it if it
is causing a kernel problem.

> 2. Will the new model reduce the use/need for kernel modules. Would this be a
> good thing if functionality could be implemented in a driver instead of a
> module.
>

The current trend is to make all drivers modules. That way, the
kernel will not be bloated with thousands of drivers that are never
used. Basically, the kernel will have just enough hardware-interface
to boot, possibly into a RAM Disk. Then the modules necessary to
support the specific hardware are loaded, the devices initialized
and the boot continues.

> 3. Will the practice of deliberately breaking some binary only 'tainted'
> modules prevent take up of Linux. Isn't this taking things too far?
>
> James
> -

There is no such practice going on at this time. A module must
be compiled using the same interface elements (structure members, etc.)
as the kernel. Therefore it must have the same version number, compiled
against the same kernel headers. If the designer of the module can't
make the source code public (usually because of corporate restrictions)
then, if there is a problem that you need to report to the kernel
development group, you need to make sure that the "secret" module
is not installed at that time.  If the secret module is causing
the kernel problem, which is seldom the case BYW, then you need to
contact the provider of the secret module. They may have a brand-
new version that works perfectly.

A case-in-point: A truly MAJOR screen-card developer has not been
allowed to make the source-code publically available because of
corporate restrictions (A publically-owned company might not be
able to make their intellectual property public. This might cause
a stock-holder revolt). This major company has quickly responded
to failures of their modules to work in the latest kernel versions.
The result is that they have a good working relationship, even though
inserting one of their drivers will cause the OPPS reporting software
to declare that the kernel is "tainted".

You don't get a "tainted" message otherwise. You just get good
screen graphics.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (794.73 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: Driver Model
  2003-09-02 18:43 James Clark
@ 2003-09-02 19:13 ` Robert Love
  2003-09-02 20:44 ` Richard B. Johnson
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 44+ messages in thread
From: Robert Love @ 2003-09-02 19:13 UTC (permalink / raw)
  To: jimwclark; +Cc: linux-kernel

On Tue, 2003-09-02 at 14:43, James Clark wrote:

> 1. Will the move to a more uniform driver model in 2.6 increase the chances of 
> a given binary driver working with a 2.6+ kernel. 

I don't see how.

> 2. Will the new model reduce the use/need for kernel modules.

No.  The two concepts are really unrelated.

> 3. Will the practice of deliberately breaking some binary only 'tainted' 
> modules prevent take up of Linux. Isn't this taking things too far?

Tainted modules are not "broken" -- they just display a "tainted"
message.  We do not do things to deliberately break binary-only modules.

The driver model has four main benefits, in my eyes:

	- unifies code between the previous desperate driver models
	- creates a device topology, which is needed for power 
	  management
	- allows for things like sysfs and other logical device
	  representations
	- it is just the Right Way to do it

None of your questions are related to the driver model, really.  It is
not a new uniform driver API, if that is what you are thinking.  It is 
a topology/hierarchal abstraction for devices.

	Robert Love



^ permalink raw reply	[flat|nested] 44+ messages in thread

* Driver Model
@ 2003-09-02 18:43 James Clark
  2003-09-02 19:13 ` Robert Love
                   ` (4 more replies)
  0 siblings, 5 replies; 44+ messages in thread
From: James Clark @ 2003-09-02 18:43 UTC (permalink / raw)
  To: linux-kernel

1. Will the move to a more uniform driver model in 2.6 increase the chances of 
a given binary driver working with a 2.6+ kernel. 

2. Will the new model reduce the use/need for kernel modules. Would this be a 
good thing if functionality could be implemented in a driver instead of a 
module.

3. Will the practice of deliberately breaking some binary only 'tainted' 
modules prevent take up of Linux. Isn't this taking things too far?

James

^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2003-09-13 17:59 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <rtHg.3n0.9@gated-at.bofh.it>
     [not found] ` <rK5y.1xN.25@gated-at.bofh.it>
2003-09-03 18:42   ` Driver Model Pascal Schmidt
2003-09-03 19:49     ` Andre Hedrick
2003-09-03 22:41     ` David Schwartz
2003-09-03 23:11       ` Pascal Schmidt
2003-09-03 23:33         ` David Schwartz
2003-09-04  1:38           ` Pascal Schmidt
2003-09-04  3:01             ` David Schwartz
2003-09-04 14:21               ` Pascal Schmidt
2003-09-10 14:59               ` People, not GPL [was: Re: Driver Model] Timothy Miller
2003-09-10 20:34                 ` David Schwartz
2003-09-12 19:55                   ` Timothy Miller
2003-09-13 14:18                     ` Geert Uytterhoeven
2003-09-13 17:58                       ` Alan Cox
2003-09-10 23:35                 ` James Clark
2003-09-04  1:37         ` Driver Model Andre Hedrick
2003-09-02 18:43 James Clark
2003-09-02 19:13 ` Robert Love
2003-09-02 20:44 ` Richard B. Johnson
2003-09-03 14:36   ` Stuart MacDonald
2003-09-03 14:52     ` Jan-Benedict Glaw
2003-09-03 14:57     ` Alan Cox
2003-09-03 15:13       ` Stuart MacDonald
2003-09-03 15:33         ` Mariusz Zielinski
2003-09-03 15:50           ` Stuart MacDonald
2003-09-03 16:02             ` Mariusz Zielinski
2003-09-03 17:58               ` Stuart MacDonald
2003-09-03 16:58             ` Alan Cox
2003-09-03 18:21               ` Jeff Garzik
2003-09-03 15:50           ` Mariusz Zielinski
2003-09-03 22:41       ` David Schwartz
2003-09-04 11:03         ` Alan Cox
2003-09-03 15:22     ` Richard B. Johnson
2003-09-02 21:29 ` Patrick Mochel
2003-09-02 21:44   ` James Clark
2003-09-02 22:05     ` Greg KH
2003-09-02 22:08     ` Robert Love
2003-09-02 22:39     ` Jamie Lokier
2003-09-02 23:52 ` Andre Hedrick
2003-09-03  0:20   ` David Schwartz
2003-09-03 17:38     ` Andre Hedrick
2003-09-03 18:19       ` Alan Cox
2003-09-03 18:15         ` Andre Hedrick
2003-09-04 12:40       ` Henning P. Schmiedehausen
2003-09-03 13:10 ` Alan Cox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).