linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@linuxfoundation.org>,
	Andrew Morton <akpm@linuxfoundation.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Kate Stewart <kstewart@linuxfoundation.org>,
	Philippe Ombredanne <pombredanne@nexb.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Christoph Hellwig <hch@lst.de>,
	Russell King <rmk+kernel@armlinux.org.uk>,
	Rob Herring <rob.herring@linaro.org>,
	Jonas Oberg <jonas@fsfe.org>, Joe Perches <joe@perches.com>,
	linux-xfs@vger.kernel.org,
	Charlemagne Lasse <charlemagnelasse@gmail.com>,
	Carmen Bianca Bakker <carmenbianca@fsfe.org>
Subject: Re: [patch V4 01/11] Documentation: Add license-rules.rst to describe how to properly identify file licenses
Date: Fri, 17 Nov 2017 19:11:41 +0100 (CET)	[thread overview]
Message-ID: <alpine.DEB.2.20.1711171850330.2186@nanos> (raw)
In-Reply-To: <20171117150639.0e706421@vento.lan>

Mauro,

On Fri, 17 Nov 2017, Mauro Carvalho Chehab wrote:
> Em Fri, 17 Nov 2017 11:00:33 +0100 (CET)
> Thomas Gleixner <tglx@linutronix.de> escreveu:
> 
> > Subject: Documentation: Add license-rules.rst to describe how to properly identify file licenses
> > From: Thomas Gleixner <tglx@linutronix.de>
> > Date: Fri, 10 Nov 2017 09:30:00 +0100
> > 
> > Add a file to the Documentation directory to describe how file licenses
> > should be described in all kernel files, using the SPDX identifier, as well
> > as where all licenses should be in the kernel source tree for people to
> > refer to (LICENSES/).
> > 
> > Thanks to Kate, Greg and Jonathan for review and editing and Jonas for the
> > suggestions concerning the meta tags in the licenses files.
> > 
> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> 
> The document itself looks good, but I think it should also mention
> what would be the expected values for the MODULE_LICENSE() macro and
> how each license would be mapped into it.
> 
> Right now, include/linux/module.h says:
> 
> /*
>  * The following license idents are currently accepted as indicating free
>  * software modules
>  *
>  *	"GPL"				[GNU Public License v2 or later]
>  *	"GPL v2"			[GNU Public License v2]
>  *	"GPL and additional rights"	[GNU Public License v2 rights and more]
>  *	"Dual BSD/GPL"			[GNU Public License v2
>  *					 or BSD license choice]
>  *	"Dual MIT/GPL"			[GNU Public License v2
>  *					 or MIT license choice]
>  *	"Dual MPL/GPL"			[GNU Public License v2
>  *					 or Mozilla license choice]
>  *
>  * The following other idents are available
>  *
>  *	"Proprietary"			[Non free products]
>  *
>  * There are dual licensed components, but when running with Linux it is the
>  * GPL that is relevant so this is a non issue. Similarly LGPL linked with GPL
>  * is a GPL combined work.
>  *
>  * This exists for several reasons
>  * 1.	So modinfo can show license info for users wanting to vet their setup
>  *	is free
>  * 2.	So the community can ignore bug reports including proprietary modules
>  * 3.	So vendors can do likewise based on their own policies
>  */
> #define MODULE_LICENSE(_license) MODULE_INFO(license, _license)
> 
> In thesis, for every SPDX property at C or assembler files, we should have
> a mapping into one of those MODULE_LICENSE().

I know. This is on the list of things which need to be addressed. The
module license tags are a mess on their own and I have yet to come up with
something smart to make this consistent.

Whatever I came up with so far requires postprocessing.

For files which have MODULE_LICENSE("...."):

   1) Grab the SPDX identifier from the source file

   2) Check whether the module license string is matching the SPDX license
      id. This is limited because the module license strings are pretty
      restricted.

   2) Store the SPDX license id string in a separate module info variable

Introcude a MODULE_LICENSE_SPDX macro which flags the module info storage
as 'SPDXIFY' and let the postprocessor do:

   1) Grab the SPDX identifier from the source file

   2) Map it to the "known" module license string and store both in module
      info.

That way tools can get access to the SPDX identifier and start to support it.

I refrained from documenting anything in that area yet, because we really
need to sit down and figure out a solution first.

It's on that huge thingy which is append only, aka. todo list.

Thanks,

	tglx

  reply	other threads:[~2017-11-17 18:11 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-16 18:33 [patch V2 00/11] LICENSES: Add documentation and initial License files Thomas Gleixner
2017-11-16 18:33 ` [patch V2 01/11] Documentation: Add license-rules.rst to describe how to properly identify file licenses Thomas Gleixner
2017-11-16 19:44   ` Rob Herring
2017-11-16 20:57   ` [patch V3 " Jonathan Corbet
2017-11-17  9:48     ` Thomas Gleixner
2017-11-17 22:38       ` Jonathan Corbet
2017-11-17 10:00   ` [patch V4 " Thomas Gleixner
2017-11-17 11:58     ` Philippe Ombredanne
     [not found]     ` <CAG_66ZRPXxodLw=eeTRtXuRGfvmonVNknzNmMuNMVooJgd1Uxw@mail.gmail.com>
2017-11-17 13:16       ` Thomas Gleixner
2017-11-17 17:06     ` Mauro Carvalho Chehab
2017-11-17 18:11       ` Thomas Gleixner [this message]
2017-11-17 18:39         ` Christoph Hellwig
2017-11-22 11:12           ` Thomas Gleixner
2017-11-22 11:51             ` Mauro Carvalho Chehab
2017-11-22 13:23               ` Christoph Hellwig
2017-11-22 13:35                 ` Mauro Carvalho Chehab
2017-11-22 13:48               ` Greg Kroah-Hartman
2017-11-25 19:04                 ` Pavel Machek
2017-11-25 19:11                   ` Linus Torvalds
2017-11-25 19:17                     ` Pavel Machek
2017-11-25 19:30                       ` Linus Torvalds
2017-11-25 19:53                         ` Mauro Carvalho Chehab
2017-11-25 20:30                           ` Linus Torvalds
2017-11-25 18:51       ` Pavel Machek
2017-11-25 23:41         ` Philippe Ombredanne
2017-11-17 19:02     ` Jonas Oberg
2017-12-14 16:25     ` Joe Perches
2017-12-14 16:29       ` Thomas Gleixner
2018-01-05 13:05     ` [V4, " Alexandre Belloni
2018-01-05 18:55       ` Russell King - ARM Linux
2018-01-05 22:48       ` Frank Rowand
2018-01-05 23:05         ` Alexandre Belloni
2017-11-17 10:07   ` [patch V2 " Greg Kroah-Hartman
2017-11-17 10:17   ` Carmen Bianca Bakker
2017-11-17 10:21     ` Thomas Gleixner
2017-11-16 18:33 ` [patch V2 02/11] LICENSES: Add the GPL 2.0 license Thomas Gleixner
2017-11-17 10:09   ` Greg Kroah-Hartman
2017-11-18 19:03   ` Charlemagne Lasse
2017-11-18 19:05     ` Charlemagne Lasse
2017-11-18 19:13     ` Jonas Oberg
2017-11-18 19:14     ` Linus Torvalds
2017-11-18 20:41       ` Charlemagne Lasse
2017-11-19  8:50         ` Charlemagne Lasse
2017-11-20 15:31       ` Alan Cox
2017-11-20 15:42         ` Russell King - ARM Linux
2017-11-21  8:27         ` Jonas Oberg
2017-11-21 13:57         ` Philippe Ombredanne
2017-11-21 17:55           ` Philippe Ombredanne
2017-11-20  9:42     ` Thomas Gleixner
2017-11-16 18:33 ` [patch V2 03/11] LICENSES: Add the LGPL " Thomas Gleixner
2017-11-17 10:09   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 04/11] LICENSES: Add the LGPL-2.1 license Thomas Gleixner
2017-11-17 10:09   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 05/11] LICENSES: Add the BSD 2-clause "Simplified" license Thomas Gleixner
2017-11-17 10:08   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 06/11] LICENSES: Add the BSD 3-clause "New" or "Revised" License Thomas Gleixner
2017-11-17 10:09   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 07/11] LICENSES: Add the BSD-3-clause "Clear" license Thomas Gleixner
2017-11-17 10:08   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 08/11] LICENSES: Add the MIT license Thomas Gleixner
2017-11-16 18:33 ` [patch V2 09/11] LICENSES: Add Linux syscall note exception Thomas Gleixner
2017-11-16 21:00   ` [patch V3 " Jonathan Corbet
2017-11-17 10:07   ` [patch V2 " Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 10/11] LICENSES: Add the GPL 1.0 license Thomas Gleixner
2017-11-17 10:08   ` Greg Kroah-Hartman
2017-11-16 18:33 ` [patch V2 11/11] LICENSES: Add MPL-1.1 license Thomas Gleixner
2017-11-17 10:08   ` Greg Kroah-Hartman
2017-11-16 19:25 ` [patch V2 00/11] LICENSES: Add documentation and initial License files Thomas Gleixner
2017-12-04 21:19 [patch V4 " Thomas Gleixner
2017-12-04 21:19 ` [patch V4 01/11] Documentation: Add license-rules.rst to describe how to properly identify file licenses Thomas Gleixner
2017-12-05  6:50   ` Heiko Carstens
2017-12-08 15:29     ` Philippe Ombredanne
2017-12-09 11:03   ` Philippe Ombredanne
2017-12-11 21:58     ` Jonathan Corbet

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.20.1711171850330.2186@nanos \
    --to=tglx@linutronix.de \
    --cc=akpm@linuxfoundation.org \
    --cc=carmenbianca@fsfe.org \
    --cc=charlemagnelasse@gmail.com \
    --cc=corbet@lwn.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=hch@lst.de \
    --cc=joe@perches.com \
    --cc=jonas@fsfe.org \
    --cc=kstewart@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=mchehab@s-opensource.com \
    --cc=pombredanne@nexb.com \
    --cc=rmk+kernel@armlinux.org.uk \
    --cc=rob.herring@linaro.org \
    --cc=torvalds@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).