On Wed, May 22, 2019 at 3:37 PM Joe Perches <joe@xxxxxxxxxxx> wrote: > > On Wed, 2019-05-22 at 13:32 +0900, Masahiro Yamada wrote: > > On Tue, May 21, 2019 at 10:34 PM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > [] > > > - Add GPL-2.0-only or GPL-2.0-or-later tags to files where our scan > > > tools can determine the license text in the file itself. Where this > > > happens, the license text is removed, in order to cut down on the > > > 700+ different ways we have in the kernel today, in a quest to get > > > rid of all of these. > [] > > I have been wondering for a while > > which version of spdx tags I should use in my work. > > > > I know the 'GPL-2.0' tag is already deprecated. > > (https://spdx.org/licenses/GPL-2.0.html) > > > > But, I saw negative reaction to this: > > https://lore.kernel.org/patchwork/patch/975394/ > > > > Nor "-only" / "-or-later" are documented in > > Documentation/process/license-rules.rst > > > > In this patch series, Thomas used 'GPL-2.0-only' and 'GPL-2.0-or-later' > > instead of 'GPL-2.0' and 'GPL-2.0+'. > > > > Now, we have a great number of users of spdx v3 tags. > > $ git grep -P 'SPDX-License-Identifier.*(?:-or-later|-only)'| wc -l > > 4135 > > So, what I understood is: > > > > For newly added tags, '*-only' and '*-or-later' are preferred. > > > > (But, we do not convert existing spdx v2 tags globally.) > > > > > > " > > Joe's patch was not merged, but at least > > Documentation/process/license-rules.rst > > should be updated in my opinion. > > > > (Perhaps, checkpatch.pl can suggest newer tags in case > > patch submitters do not even know that deprecation.) > > I'd still prefer the kernel use of a single SPDX style. > > I don't know why the -only and -or-later forms were > used for this patch, but I like it. > > I believe the -only and -or-later are more intelligible > as a trivial reading of > > SPDX-License-Identifier: GPL-2.0 > > would generally mean to me the original > GPL-2.0 license without the elision of the > (or at your option, any later version) bits > > whereas > > SPDX-License-Identifier: GPL-2.0-only > > seems fairly descriptive. > > Is it agreed that the GPL-<v>-only and GPL-<v>-or-later > forms should be preferred for new SPDX identifiers? I agree. > If so, I'll submit a checkpatch patch. That will be nice. > I could also wire up a patch to checkpatch and docs to > remove the /* */ > requirement for .h files and prefer > the generic // form for both .c and > .h files as the > current minimum tooling versions now all allow // > comments > . We have control for minimal tool versions for building the kernel, so I think // will be OK for in-kernel headers. On the other hand, I am not quite sure about UAPI headers. We cannot define minimum tool versions for building user-space. Perhaps, using // in UAPI headers causes a problem if an ancient compiler is used? BTW, if we allow to use // in header files, we have no reason to forbid // in assembly files either. We use *.S files (assembly that should be preprocessed) instead of *.s files. So, comments are ripped off by CPP anyway whichever comment style is used. -- Best Regards Masahiro Yamada