Re: [B.A.T.M.A.N.] [PATCH 8/9] batman-adv: Change batman_adv.h license to MIT

Sven Eckelmann
2017-11-23T18:13:00Z

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

On Donnerstag, 23. November 2017 16:43:29 CET Andrew Lunn wrote:
[...]
> I just looked at Linus's current master branch:
>
> ~/linux/include/uapi$ grep -hr SPDX * | sort | uniq -c
> 14 /* SPDX-License-Identifier: GPL-1.0+ WITH Linux-syscall-note */
> 541 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
> 113 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
> 1 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) AND MIT) */
> 21 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) */
> 17 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
> 4 /* SPDX-License-Identifier: ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) */
> 3 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR MIT) */
> 3 /* SPDX-License-Identifier: LGPL-2.0+ WITH Linux-syscall-note */
> 3 /* SPDX-License-Identifier: LGPL-2.1 WITH Linux-syscall-note */
> 15 /* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
>
> We are in the region of "Lies, damn lies, and statistics", but
> everything with an SPDX tag has some form of GPL/LGPL. Now, adding
> SPDX tags is a new activity, and adding the GPLs tags have been done
> first, since they are easier to do. So it could be there are a lot of
> UAPI header files which are not {L}GPL. Also, given this small sample,
> it seems BSD is more popular over MIT.

Problem here is how the most SPDX stuff was added (until now). Mostly things
got an SPDX tag which either didn't contain any license information or which
used a rather obscure way of informing the user about the license. If I search
for some (not perfect) markers of the ISC then I can find 471 files (including
the nl80211.h which was the original reason to chose the ISC). And I find 3154
for MIT and 2371 for BSD (no idea which version is more popular here). I
cannot be really sure about the results until the proper SPDX tags
were added.

$ git grep -l 'Permission to use, copy, modify, and/or '|wc -l
471
$ git grep -l 'Permission is hereby granted, free of charge'|wc -l
3154
$ git grep -l 'Redistributions of source code must'|wc -l
2371

> I understand the reasons for ISC to MIT, so
>
> Acked-by: Andrew Lunn <andrew@lunn.ch>

Thanks

> However, i wounder if GPL-2.0 WITH Linux-syscall-note OR one of the
> BSD variants would be more consistent with the rest of the kernel?

From a popularity contest perspective, the BSD licenses seem to lose (I
could be wrong here). But some of the BSD license variants are also under the
LICENSES/preferred/ folder in Thomas Gleixner's latest patchset (which was
prepared with Linus & Co. [1]). So technically, the BSD-2 would also work.

To the "GPL-2.0 WITH Linux-syscall-note" part - we have currently the problem
that this file usually doesn't exist in a packaged form on Linux systems
(yet).

Usually, people are just building the external kernel module when they want
the latest features and then build their software *not* against the headers of
the external module. And this means that people tend to integrate the file in
their software (even we do that) to be able to access it when compiling it.
And I would like to avoid that people are scared of using netlink (with
batman_adv.h) because they would have to package a GPL-2.0 (+some extra stuff)
licensed file.

It seemed to be the easiest/cleanest move to have the file under a permissive
license. Especially because this file only contains the IDs used when
communicating with batman-adv over netlink and some (brief) documentation.

That said, I personally don't know of any closed-source software which uses
the batman-adv netlink interface.

Kind regards,
Sven

[1] at least I've read more than once that a this or that decision cannot be
changed because Linus said so :)

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]