Received: by 10.223.164.202 with SMTP id h10csp1453652wrb; Wed, 8 Nov 2017 04:37:20 -0800 (PST) X-Google-Smtp-Source: ABhQp+RtBb6NlNtZRWi1QcMUOV+Ubcc/7f2V8t4nBUGfwj+Ex5RcOg6/9l+mEc/yywbEhwAQmi28 X-Received: by 10.159.208.71 with SMTP id w7mr348933plz.228.1510144640519; Wed, 08 Nov 2017 04:37:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510144640; cv=none; d=google.com; s=arc-20160816; b=uFnDCUSvQsFJKsCeDlyJtPPwtfWCYr5stOnk41awTkNF8KXQvvtlpJd6lquwXY41ME L3GwZwqYMApS4TWBb8Mr+5K2u/lkHexg9PF4Ma3OC8q3gUM6SzEpCIS2+YDh5T/jXIkx 4N6aVl0i2K9bbAN1MM+8xuyRFH2pJzGsQsD1kZbOCd3rs4022e2bSivuT18chmvW4vFt D3i5TV1bssEGAezvI23tHATcahmiyDwHijLNt4p7hkwINXtYzVr0UNQAEEW0UQqfuS+H Lp+L16VIHrMo2HxuNK2Yp/uQsJMQgvOQumrRgf0xnOoCdV6iNioXFolAZ6aVW+c3Y0rT baSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:references:in-reply-to:mime-version :dkim-signature:arc-authentication-results; bh=+ehThDnsWgZsfr1CY/h3tbvGH126MFnizTDAuw2fHUc=; b=q9dUbyPXPiWUaRLCV0aO7C+shoB5KBhHkxHX9hPTsf1klXlRo+2ctQEN5pHcZYV+jP 4cYekmQZNbvx+xtgdD/UDP2LyiHtixELT4241/GF8kDrUy4Q70is/e7IqeMemnDtPEoq 07gB9MbBkJ5Wcfqegbp0A8HYe3+QQPKZDYRvUzRZOqKNJSzgnBApN1D+drhDBFFJCh0k xxw51CzouTblZ/B9o+OziLpmfoayIr41hoAV0oPQ3VQ5UpJ7lsOq27XkBGjVKOzvYN8L +amXIFnXJ+vDvBqdoi5IGt5lYXS7VQS5wpSgjCDl0FjCHQroctmOAcln3s6TqF0X3crh 5Qyg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nexb-com.20150623.gappssmtp.com header.s=20150623 header.b=HCkHoHa6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j9si3692906pgt.610.2017.11.08.04.37.08; Wed, 08 Nov 2017 04:37:20 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nexb-com.20150623.gappssmtp.com header.s=20150623 header.b=HCkHoHa6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752260AbdKHMga (ORCPT + 81 others); Wed, 8 Nov 2017 07:36:30 -0500 Received: from mail-wr0-f181.google.com ([209.85.128.181]:56285 "EHLO mail-wr0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751931AbdKHMg2 (ORCPT ); Wed, 8 Nov 2017 07:36:28 -0500 Received: by mail-wr0-f181.google.com with SMTP id l8so2254755wre.12 for ; Wed, 08 Nov 2017 04:36:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nexb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=+ehThDnsWgZsfr1CY/h3tbvGH126MFnizTDAuw2fHUc=; b=HCkHoHa6pcmLnVOIupbJ69t9tN8di4gMBOXKY4r/AXHwCkqDMJrH+X+HKegDVoxPXp GtPcXhVwG9GuhCeIk8+3GI6V3Eh9cdBjpoNhIiJN23MdC/2iHuYKpJuy9lelWobAH7wN cq+h28IPfQAinyruy94DIYZjDoxgcXdxaat4VAAxeHJF0EWj2JowpunJ3onL5+/xjj8y qrt6FIRwPF46e3XHSSVYwHy9weuF8ZKbyb3mr6C1+3RE4fGZ0OJI7clCAGwOJCaZfqb+ Uqdpy4UGqzODOcuSc93NlY2w1MWk5sBb+7yuAnSqErlXbpKCN/74H+/m6i4l0dh5Uuo0 cCZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=+ehThDnsWgZsfr1CY/h3tbvGH126MFnizTDAuw2fHUc=; b=buTzSeOScnGyKMty0g/4Aqj5vFXKeB7XZfL4BfrjwQ4rmTDbg7rNSlgXib4pK8KJMV H9yLGmhRrC2a6TfjnCIMX+BuOFZrvtwDxMTC3wcfgkQkrKGjY6hcIWAzH37RWZl+XpbQ AO6VOVKu1yuOKxlPqEEjbYtcNKLQw63WKY9DPx3/tavifUhbe1CZh4Onl2CgKUCbaWPp zf0Q6Obkw+sKgfAMbkZ80PaPXlAdqqB1ESuZO8fRvtIb0jDJg72tnNXNOPVJ/R670VRG MZ0SiWt6RTN1RctcNzU+rHSBw3Mfki5HKWOVGT/adoHJw7DMTmlY5oEAlVDld/JL7pHr SYIA== X-Gm-Message-State: AJaThX77wOhSY+rWiuC1Dyh3ZHs+87hUHHPGm/1YEZ/sKGGHZ8aNwftj Lo+hTJ34HlERQmjNwJMub2aC+8Ne5ZdLAKTHzgSttg== X-Received: by 10.223.195.138 with SMTP id p10mr353380wrf.88.1510144586791; Wed, 08 Nov 2017 04:36:26 -0800 (PST) MIME-Version: 1.0 Received: by 10.223.139.129 with HTTP; Wed, 8 Nov 2017 04:35:46 -0800 (PST) In-Reply-To: <20171107192846.GA24617@infradead.org> References: <20171107020607.GA26910@magnolia> <20171107072040.GB4586@infradead.org> <20171107073940.GB4654@kroah.com> <20171107172042.GB26910@magnolia> <20171107182903.GA4588@kroah.com> <20171107184658.56b87d41@alans-desktop> <20171107191526.x3rzfcnnlmaz264d@thunk.org> <20171107192846.GA24617@infradead.org> From: Philippe Ombredanne Date: Wed, 8 Nov 2017 13:35:46 +0100 Message-ID: Subject: Re: WTF? Re: [PATCH] License cleanup: add SPDX GPL-2.0 license identifier to files with no license To: Christoph Hellwig Cc: "Theodore Ts'o" , Alan Cox , Greg Kroah-Hartman , "Darrick J. Wong" , Eric Sandeen , xfs , LKML , Kate Stewart Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Nov 7, 2017 at 8:28 PM, Christoph Hellwig wrote= : > On Tue, Nov 07, 2017 at 02:15:26PM -0500, Theodore Ts'o wrote: >> On Tue, Nov 07, 2017 at 06:46:58PM +0000, Alan Cox wrote: >> > > Given that it had no license text on it at all, it "defaults" to GPL= v2, >> > > so the GPLv2 SPDX identifier was added to it. >> > > >> > > No copyright was changed, nothing at all happened except we explicit= ly >> > > list the license of the file, instead of it being "implicit" before. >> > >> > Well if Christoph owns the copyright (if there is one) and he has stat= ed >> > he believes it is too trivial to copyright then it needs an SPDX tag t= hat >> > indicates the rightsholder has stated it's too trivial to copyright an= d >> > (by estoppel) revoked any right they might have to pursue a claim. >> >> If Cristoph has revoked any right to pursue a claim, then he's also >> legally given up the right to complain if, say, Bradley Kuhn starting >> distributing a version with a GPLv3 permission statement --- or if Greg >> K-H adds a GPLv2 SPDX identifier. :-) > > > First Christoph really appreciate=D1=95 spelling his name right. > > Second Christoph really appreciates talking to him when trying to slap > on licensing bits on his code. I'm not evil, but I'd really like to > understand what you are doing and why, and I might be fairly agreeable > if that makes sense. > > Doing batch annotations of code where you do not the know any of > the history of is a receipt for a desaster if we want to use that > information anywhere. > > So Greg, please explain WTF you are trying to do and talk to the > people who wrote the code you are "annotating". Christoph: I am not speaking for Greg but let me highlight some issues and benefits as I chipped in a bit to help: Some data points in the 4.14.rc7 kernel: - there are 64,742 distinct license statements ... in 114,597 blocks of text ... in 42,602 files - license statements represent 480,455 lines of text - licenses are worded in 1,015 different ways - there are about 85 distinct licenses, the bulk being the GPL NB: All of these tallies were computed with scancode-toolkit [1] License text lines represent about 14.7% of all source comments. (using a CLOC to count comment lines) >From an engineering perspective this feels to me as pure madness, unless everyone in kernel land is in love with legalese! I like to think of it this way: Licensing is important but repetitive long boilerplate in patches and in every file is just a noisy distraction from the code substance. Imagine if the kernel had 500 versions of a printf() function? Maintainers would refactor the hell of it to use a few functions. Replacing the boilerplate with licensing ids is exactly the same: a sane refactoring to remove duplicated boilerplate. In the end and ideally there should be no more than one line of licensing info per file, so no more than 70Kish: so there are about 400K lines of boilerplate to remove. The benefits now and later: - no distraction with licensing boilerplate cr*p in patches and files - no guessing licensing needed when sending a patch - anyone can grep the kernel tree for licensing, no extra tool needed - Greg must feel really good about deleting so much things for once The downsides: - folks can no longer express their creativity in licensing texts like licensing thermal code under the "therms" of the GPL [2] - legalese lovers need to find another codebase to satisfy their addiction Note also that beside the kernel, U-Boot has adopted the same approach for quite a while, and in the application world the Eclipse Foundation, JavaScript NPMs and Rubygems are some examples that adopted SPDX license ids to simplify and clarify licensing documentation. [1] https://github.com/nexB/scancode-toolkit [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree= /drivers/w1/slaves/w1_therm.c?h=3Dv4.14-rc8#n8 --=20 Cordially Philippe Ombredanne From 1583483502468750454@xxx Wed Nov 08 07:52:26 +0000 2017 X-GM-THRID: 1583429945593164381 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread