Linux-SPDX Archive on lore.kernel.org
 help / color / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: J Lovejoy <opensource@jilayne.com>
Cc: Allison Randal <allison@lohutok.net>, linux-spdx@vger.kernel.org
Subject: Re: [patch 18/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 43
Date: Wed, 22 May 2019 18:28:53 +0200 (CEST)
Message-ID: <alpine.DEB.2.21.1905221801540.1770@nanos.tec.linutronix.de> (raw)
In-Reply-To: <6B434678-D956-4E9B-BDFA-A57C834621A9@jilayne.com>

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

On Wed, 22 May 2019, J Lovejoy wrote:
> > On May 21, 2019, at 1:29 AM, Thomas Gleixner <tglx@linutronix.de> wrote:
> > 
> > can you please have a look how to handle that GPL + BSD disclaimer
> > abomination SPDX wise?
> > 
> 
> Yes, I have started a new list for this special version of messiness,
> namely anything in these batches that you all are tagging as adding
> something “extra” to the standard GPL license notice.  I’m not going to
> start bringing this to SPDX until we have a more complete list - that way
> we know how many variations there are, etc.

> If/when we do reach out to copyright holders in these cases, I think it’d
> be helpful to specifically ask them if they could remove the extra text
> and confirm that the license is just plain old GPL-2.0-only or
> GPL-2.0-or-later. From Richard’s earlier comments, Philippe’s bit of
> research, and the copyright years in the notices from the actual files -
> it sounds like this additional-warranty thing was in vogue a long time go
> (and hopefully not something people think they need to do today!) - so,
> trying to clean it up where possible would be ideal.

You wish. The bulk is indeed from around 2000m but the cargo cult
disclaimer in drivers/scsi/usf/ was newly added 7 years ago and 2 years ago
a new file was added with the same crap copied. That kind of stuff is still
proliferated for whatever reasons.

Now coming back to the issue with disclaimers in general. We need a way to
deal with it as there are at least two files where there is no trace of the
company anymore. Plus GPLV3 (not relevant for the kernel, but for SPDX)
explicitely says that you can add magic disclaimers. And of course people
will do so.

While walking the dogs I thought more about this.

  1) The random disclaimer (new or old) is not necessarily forming a new
     license as long as the GPL (version) reference is unambiguous.

     It's an (for GPLv2 tolerated and for GPLv3 documented) add on.

  2) With a very quick scan (not complete and accurate) I found more than
     20 variants of disclaimers bolted on a GPLv2 reference/boilerplate.
     I fear there are more.

So it's pretty unrealistic to create 20+ disclaimer IDs or 20+ new license
IDs for those and either of these things would just help to proliferate
that nonsense and create yet another mess in the SPDX realm.

I rather suggest to do the following:

  1) Create a SPDX id 'CUSTOM_DISCLAIMER' and make the license identifier:

     SPDX-License-Identifier: GPL-2.0-or-later AND CUSTOM_DISCLAIMER

  2) Remove the GPL2.0 reference/boilerplate but keep the diclaimer in the
     comment

  3) Wrap the disclaimer into

     DISCLAIMER_BEGIN
     
      Random made up lawyerese

     DISCLAIMER_END

That gives us the following useful properties:

     1) Avoid to go through the tedious process of creating disclaimer IDs
     	or new licenses and go through all the instances of SPDX/OSI and
     	whatever.

     2) Allows to proceed with the cleanup

     3) Precicely marks the custom disclaimer for compliance tools. Even a
     	halfways trivial awk script can extract them that way.

We still can go after the copyright holders who added that mess at the same
time, but we do not depend on their willingness, availability ...

Thoughts?

Thanks,

	tglx

  reply index

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-20 17:07 [patch 00/25] SPDX cleanup: batch 2 Thomas Gleixner
2019-05-20 17:07 ` [patch 01/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 26 Thomas Gleixner
2019-05-20 21:57   ` Allison Randal
2019-05-20 23:46   ` Kate Stewart
2019-05-20 17:07 ` [patch 02/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 27 Thomas Gleixner
2019-05-20 21:58   ` Allison Randal
2019-05-20 23:47   ` Kate Stewart
2019-05-20 17:07 ` [patch 03/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 28 Thomas Gleixner
2019-05-20 21:59   ` Allison Randal
2019-05-20 23:48   ` Kate Stewart
2019-05-20 17:07 ` [patch 04/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 Thomas Gleixner
2019-05-20 22:05   ` Allison Randal
2019-05-20 23:49   ` Kate Stewart
2019-05-20 17:07 ` [patch 05/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 30 Thomas Gleixner
2019-05-20 22:06   ` Allison Randal
2019-05-20 23:49   ` Kate Stewart
2019-05-20 17:07 ` [patch 06/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 31 Thomas Gleixner
2019-05-20 22:07   ` Allison Randal
2019-05-20 23:50   ` Kate Stewart
2019-05-20 17:07 ` [patch 07/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 Thomas Gleixner
2019-05-20 22:09   ` Allison Randal
2019-05-20 23:42   ` Kate Stewart
2019-05-20 17:07 ` [patch 08/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 Thomas Gleixner
2019-05-20 22:10   ` Allison Randal
2019-05-21  1:03   ` Kate Stewart
2019-05-21 14:20   ` Michael Ellerman
2019-05-21 14:36   ` Richard Fontana
2019-05-20 17:07 ` [patch 09/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 34 Thomas Gleixner
2019-05-20 22:31   ` Allison Randal
2019-05-21  0:09   ` Kate Stewart
2019-05-20 17:08 ` [patch 10/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 35 Thomas Gleixner
2019-05-20 22:35   ` Allison Randal
2019-05-21  0:29   ` Kate Stewart
2019-05-20 17:08 ` [patch 11/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36 Thomas Gleixner
2019-05-20 22:36   ` Allison Randal
2019-05-21  0:30   ` Kate Stewart
2019-05-20 17:08 ` [patch 12/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 37 Thomas Gleixner
2019-05-20 22:37   ` Allison Randal
2019-05-21  0:33   ` Kate Stewart
2019-05-20 17:08 ` [patch 13/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 38 Thomas Gleixner
2019-05-20 22:39   ` Allison Randal
2019-05-21  0:34   ` Kate Stewart
2019-05-20 17:08 ` [patch 14/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 39 Thomas Gleixner
2019-05-20 22:39   ` Allison Randal
2019-05-21  0:39   ` Kate Stewart
2019-05-20 17:08 ` [patch 15/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 40 Thomas Gleixner
2019-05-20 22:40   ` Allison Randal
2019-05-21  0:38   ` Kate Stewart
2019-05-21 14:22   ` Michael Ellerman
2019-05-20 17:08 ` [patch 16/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 41 Thomas Gleixner
2019-05-20 22:41   ` Allison Randal
2019-05-21  0:42   ` Kate Stewart
2019-05-21  7:25     ` Thomas Gleixner
2019-05-20 17:08 ` [patch 17/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 42 Thomas Gleixner
2019-05-20 22:42   ` Allison Randal
2019-05-21  0:42   ` Kate Stewart
2019-05-20 17:08 ` [patch 18/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 43 Thomas Gleixner
2019-05-20 22:54   ` Allison Randal
2019-05-21  0:45     ` Kate Stewart
2019-05-21  7:29     ` Thomas Gleixner
2019-05-22 15:21       ` J Lovejoy
2019-05-22 16:28         ` Thomas Gleixner [this message]
2019-05-22 16:39           ` J Lovejoy
2019-05-22 22:16           ` Richard Fontana
2019-05-20 17:08 ` [patch 19/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 44 Thomas Gleixner
2019-05-20 22:56   ` Allison Randal
2019-05-21  0:46   ` Kate Stewart
2019-05-20 17:08 ` [patch 20/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45 Thomas Gleixner
2019-05-20 22:58   ` Allison Randal
2019-05-21  0:47   ` Kate Stewart
2019-05-20 17:08 ` [patch 21/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 Thomas Gleixner
2019-05-20 22:59   ` Allison Randal
2019-05-21  0:47   ` Kate Stewart
2019-05-20 17:08 ` [patch 22/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47 Thomas Gleixner
2019-05-20 23:00   ` Allison Randal
2019-05-21  0:48   ` Kate Stewart
2019-05-20 17:08 ` [patch 23/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 48 Thomas Gleixner
2019-05-20 23:02   ` Allison Randal
2019-05-21  0:49   ` Kate Stewart
2019-05-20 17:08 ` [patch 24/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 49 Thomas Gleixner
2019-05-20 23:04   ` Allison Randal
2019-05-21  0:49   ` Kate Stewart
2019-05-20 17:08 ` [patch 25/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 50 Thomas Gleixner
2019-05-20 23:05   ` Allison Randal
2019-05-21  0:50   ` Kate Stewart

Reply instructions:

You may reply publically 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.21.1905221801540.1770@nanos.tec.linutronix.de \
    --to=tglx@linutronix.de \
    --cc=allison@lohutok.net \
    --cc=linux-spdx@vger.kernel.org \
    --cc=opensource@jilayne.com \
    /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

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