Linux-SPDX Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] Documentation: clarify driver licensing rules
@ 2020-08-11 17:17 Dave Hansen
  2020-08-12  8:23 ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Dave Hansen @ 2020-08-11 17:17 UTC (permalink / raw)
  To: linux-kernel
  Cc: Dave Hansen, dan.j.williams, h.peter.anvin, tglx, gregkh, corbet,
	linux-spdx, linux-doc


Resend. Something appears to have eaten this on the way to LKML
(at least) the last time.

--

From: Dave Hansen <dave.hansen@linux.intel.com>

Greg has challenged some recent driver submitters on their license
choices. He was correct to do so, as the choices in these instances
did not always advance the aims of the submitters.

But, this left submitters (and the folks who help them pick licenses)
a bit confused. They have read things like
Documentation/process/license-rules.rst which says:

	individual source files can have a different license
	which is required to be compatible with the GPL-2.0

and Documentation/process/submitting-drivers.rst:

	We don't insist on any kind of exclusive GPL licensing,
	and if you wish ... you may well wish to release under
	multiple licenses.

As written, these appear a _bit_ more laissez faire than we've been in
practice lately. It sounds like we at least expect submitters to make
a well-reasoned license choice and to explain their rationale. It does
not appear that we blindly accept anything that is simply
GPLv2-compatible.

Drivers appear to be the most acute source of misunderstanding, so fix
the driver documentation first. Update it to clarify maintainer
expectations.

Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: H. Peter Anvin <h.peter.anvin@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: linux-spdx@vger.kernel.org
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---

 b/Documentation/process/submitting-drivers.rst |   12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff -puN Documentation/process/submitting-drivers.rst~clarify-dual-licensing Documentation/process/submitting-drivers.rst
--- a/Documentation/process/submitting-drivers.rst~clarify-dual-licensing	2020-08-11 09:35:55.493109636 -0700
+++ b/Documentation/process/submitting-drivers.rst	2020-08-11 09:35:55.496109636 -0700
@@ -59,11 +59,13 @@ What Criteria Determine Acceptance
 ----------------------------------
 
 Licensing:
-		The code must be released to us under the
-		GNU General Public License. We don't insist on any kind
-		of exclusive GPL licensing, and if you wish the driver
-		to be useful to other communities such as BSD you may well
-		wish to release under multiple licenses.
+		The code must be released to us under the GNU General Public
+		License. While there are no kernel-wide rules, some maintainers
+		may insist on exclusive GPL licensing by default. If you wish
+		the driver to be useful to other communities such as BSD you may
+		well wish to release under multiple licenses. If you choose to
+		release under multiple licenses, you should include your
+		rationale for your license choices in your cover letter.
 		See accepted licenses at include/linux/module.h
 
 Copyright:
_

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

* Re: [PATCH] Documentation: clarify driver licensing rules
  2020-08-11 17:17 [PATCH] Documentation: clarify driver licensing rules Dave Hansen
@ 2020-08-12  8:23 ` Greg KH
  2020-08-12 14:45   ` Dave Hansen
  0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2020-08-12  8:23 UTC (permalink / raw)
  To: Dave Hansen
  Cc: linux-kernel, dan.j.williams, h.peter.anvin, tglx, corbet,
	linux-spdx, linux-doc

On Tue, Aug 11, 2020 at 10:17:48AM -0700, Dave Hansen wrote:
> 
> Resend. Something appears to have eaten this on the way to LKML
> (at least) the last time.
> 
> --
> 
> From: Dave Hansen <dave.hansen@linux.intel.com>
> 
> Greg has challenged some recent driver submitters on their license
> choices. He was correct to do so, as the choices in these instances
> did not always advance the aims of the submitters.

And, to be honest, they were totally dumb attempts at doing things that
ended up not doing what they thought they were doing.

> But, this left submitters (and the folks who help them pick licenses)
> a bit confused. They have read things like
> Documentation/process/license-rules.rst which says:
> 
> 	individual source files can have a different license
> 	which is required to be compatible with the GPL-2.0
> 
> and Documentation/process/submitting-drivers.rst:
> 
> 	We don't insist on any kind of exclusive GPL licensing,
> 	and if you wish ... you may well wish to release under
> 	multiple licenses.

Both of these are find, but maybe you need to put:
	"don't try to do stupid things just because you can!"
somewhere in here instead?

> As written, these appear a _bit_ more laissez faire than we've been in
> practice lately. It sounds like we at least expect submitters to make
> a well-reasoned license choice and to explain their rationale. It does
> not appear that we blindly accept anything that is simply
> GPLv2-compatible.

That is correct, we shouldn't.

> Drivers appear to be the most acute source of misunderstanding, so fix
> the driver documentation first. Update it to clarify maintainer
> expectations.
> 
> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: Dan Williams <dan.j.williams@intel.com>
> Cc: H. Peter Anvin <h.peter.anvin@intel.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Jonathan Corbet <corbet@lwn.net>
> Cc: linux-spdx@vger.kernel.org
> Cc: linux-doc@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> ---
> 
>  b/Documentation/process/submitting-drivers.rst |   12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 
> diff -puN Documentation/process/submitting-drivers.rst~clarify-dual-licensing Documentation/process/submitting-drivers.rst
> --- a/Documentation/process/submitting-drivers.rst~clarify-dual-licensing	2020-08-11 09:35:55.493109636 -0700
> +++ b/Documentation/process/submitting-drivers.rst	2020-08-11 09:35:55.496109636 -0700
> @@ -59,11 +59,13 @@ What Criteria Determine Acceptance
>  ----------------------------------
>  
>  Licensing:
> -		The code must be released to us under the
> -		GNU General Public License. We don't insist on any kind
> -		of exclusive GPL licensing, and if you wish the driver
> -		to be useful to other communities such as BSD you may well
> -		wish to release under multiple licenses.
> +		The code must be released to us under the GNU General Public
> +		License. While there are no kernel-wide rules, some maintainers
> +		may insist on exclusive GPL licensing by default.

Maintainers should not do that, it is not their place to do so.  They
_can_ push back on, again, stupid things, but in the end, they should
accept anything that is a compatible license with the kernel as it is
really up to the copyright owner as to what license they wish to use.

So while I like the intent here, I don't think this wording change is
good as-is.

As it stands, the text makes sense, but as always, if you have legal
questions, you should be talking to a lawyer, not a kernel developer :)

thanks,

greg k-h

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

* Re: [PATCH] Documentation: clarify driver licensing rules
  2020-08-12  8:23 ` Greg KH
@ 2020-08-12 14:45   ` Dave Hansen
  2020-08-12 14:58     ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Dave Hansen @ 2020-08-12 14:45 UTC (permalink / raw)
  To: Greg KH
  Cc: linux-kernel, dan.j.williams, h.peter.anvin, tglx, corbet,
	linux-spdx, linux-doc

On 8/12/20 1:23 AM, Greg KH wrote:
> On Tue, Aug 11, 2020 at 10:17:48AM -0700, Dave Hansen wrote:
>> But, this left submitters (and the folks who help them pick licenses)
>> a bit confused. They have read things like
>> Documentation/process/license-rules.rst which says:
>>
>> 	individual source files can have a different license
>> 	which is required to be compatible with the GPL-2.0
>>
>> and Documentation/process/submitting-drivers.rst:
>>
>> 	We don't insist on any kind of exclusive GPL licensing,
>> 	and if you wish ... you may well wish to release under
>> 	multiple licenses.
> 
> Both of these are fine, but maybe you need to put:
> 	"don't try to do stupid things just because you can!"
> somewhere in here instead?

Folks never think what _they_ are doing is stupid, so I fear that would
fall on deaf ears.

...
>>  Licensing:
>> -		The code must be released to us under the
>> -		GNU General Public License. We don't insist on any kind
>> -		of exclusive GPL licensing, and if you wish the driver
>> -		to be useful to other communities such as BSD you may well
>> -		wish to release under multiple licenses.
>> +		The code must be released to us under the GNU General Public
>> +		License. While there are no kernel-wide rules, some maintainers
>> +		may insist on exclusive GPL licensing by default.
> 
> Maintainers should not do that, it is not their place to do so.  They
> _can_ push back on, again, stupid things, but in the end, they should
> accept anything that is a compatible license with the kernel as it is
> really up to the copyright owner as to what license they wish to use.

I wonder if we're not quite on the same page.  I thought the pitfall
recently was from overly-aggressive dual-licensing on code that wasn't
likely to be able to be used in another project.  Was that the misstep?
 Or was it that the code shouldn't have been dual-licensed in the first
place because it was too intertwined with GPLv2 code to be anything but
purely GPLv2?

> So while I like the intent here, I don't think this wording change is
> good as-is.
> 
> As it stands, the text makes sense, but as always, if you have legal
> questions, you should be talking to a lawyer, not a kernel developer :)

I'd like to do two things with this Documentation/.  First, to _get_
folks to go talk to their lawyers.  Second, the lawyers and the
non-lawyers who do licensing _will_ read this documentation.  If they
understand what the kernel expects, they are in the best position to
pass that understanding on to developers since they're the gatekeepers.
  That will hopefully make your job easier because it will filter out
some of the stupid things before you see them.

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

* Re: [PATCH] Documentation: clarify driver licensing rules
  2020-08-12 14:45   ` Dave Hansen
@ 2020-08-12 14:58     ` Greg KH
  0 siblings, 0 replies; 4+ messages in thread
From: Greg KH @ 2020-08-12 14:58 UTC (permalink / raw)
  To: Dave Hansen
  Cc: linux-kernel, dan.j.williams, h.peter.anvin, tglx, corbet,
	linux-spdx, linux-doc

On Wed, Aug 12, 2020 at 07:45:00AM -0700, Dave Hansen wrote:
> On 8/12/20 1:23 AM, Greg KH wrote:
> > On Tue, Aug 11, 2020 at 10:17:48AM -0700, Dave Hansen wrote:
> >> But, this left submitters (and the folks who help them pick licenses)
> >> a bit confused. They have read things like
> >> Documentation/process/license-rules.rst which says:
> >>
> >> 	individual source files can have a different license
> >> 	which is required to be compatible with the GPL-2.0
> >>
> >> and Documentation/process/submitting-drivers.rst:
> >>
> >> 	We don't insist on any kind of exclusive GPL licensing,
> >> 	and if you wish ... you may well wish to release under
> >> 	multiple licenses.
> > 
> > Both of these are fine, but maybe you need to put:
> > 	"don't try to do stupid things just because you can!"
> > somewhere in here instead?
> 
> Folks never think what _they_ are doing is stupid, so I fear that would
> fall on deaf ears.

True, but one can dream...

> ...
> >>  Licensing:
> >> -		The code must be released to us under the
> >> -		GNU General Public License. We don't insist on any kind
> >> -		of exclusive GPL licensing, and if you wish the driver
> >> -		to be useful to other communities such as BSD you may well
> >> -		wish to release under multiple licenses.
> >> +		The code must be released to us under the GNU General Public
> >> +		License. While there are no kernel-wide rules, some maintainers
> >> +		may insist on exclusive GPL licensing by default.
> > 
> > Maintainers should not do that, it is not their place to do so.  They
> > _can_ push back on, again, stupid things, but in the end, they should
> > accept anything that is a compatible license with the kernel as it is
> > really up to the copyright owner as to what license they wish to use.
> 
> I wonder if we're not quite on the same page.  I thought the pitfall
> recently was from overly-aggressive dual-licensing on code that wasn't
> likely to be able to be used in another project.  Was that the misstep?
>  Or was it that the code shouldn't have been dual-licensed in the first
> place because it was too intertwined with GPLv2 code to be anything but
> purely GPLv2?

Both of those have been the cases recently, it's not just one recent
submission that has had this problem :(

> > So while I like the intent here, I don't think this wording change is
> > good as-is.
> > 
> > As it stands, the text makes sense, but as always, if you have legal
> > questions, you should be talking to a lawyer, not a kernel developer :)
> 
> I'd like to do two things with this Documentation/.  First, to _get_
> folks to go talk to their lawyers.  Second, the lawyers and the
> non-lawyers who do licensing _will_ read this documentation.  If they
> understand what the kernel expects, they are in the best position to
> pass that understanding on to developers since they're the gatekeepers.
>   That will hopefully make your job easier because it will filter out
> some of the stupid things before you see them.

I agree with your goal here, I just don't agree that we should be saying
"some maintainers may insist on exclusive GPL licensing" as no
maintainer should be insisting on this.  They should be pushing back on
the "that is just dumb as it doesn't even do what you think it does!"
patches, like I have been seeing recently.

I do not want to codify the behavior I have seen at times of some
maintainers who refuse to accept anything but GPL-only licensed code.
So try rewording your patch a bit as I think we are in violent agreement
here :)

thanks,

greg k-h

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

end of thread, back to index

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-11 17:17 [PATCH] Documentation: clarify driver licensing rules Dave Hansen
2020-08-12  8:23 ` Greg KH
2020-08-12 14:45   ` Dave Hansen
2020-08-12 14:58     ` Greg KH

Linux-SPDX Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-spdx/0 linux-spdx/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-spdx linux-spdx/ https://lore.kernel.org/linux-spdx \
		linux-spdx@vger.kernel.org
	public-inbox-index linux-spdx

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-spdx


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git