PhilippeBekaert / snd-hdspe

New linux driver and tools for RME HDSPe sound cards and extension modules
GNU General Public License v3.0
51 stars 18 forks source link

Linux Kernel License Incompatibility #19

Open JustALawnGnome7 opened 11 months ago

JustALawnGnome7 commented 11 months ago

This project is licensed under GPL-3.0, which is incompatible with Linux kernel's license (GPL-2.0). Due to licensing restrictions alone, this project will almost certainly never be eligible for mainlining into the Linux kernel. To ensure this projects receives wide adoption in the FOSS community, please consider dual-licensing this project under GPL-2.0 and GPL-3.0 licenses.

Schroedingers-Cat commented 11 months ago

Weird, all the code states // SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note in their headers.

Also, the driver from this repo is based on the hdspm driver, which has been mainlined years ago.

JustALawnGnome7 commented 11 months ago

Yeah, I see that. I'm just looking at the LICENSE file at the root of the repo, which clearly says, "GNU GENERAL PUBLIC LICENSE Version 3". My apologies, but I don't know how to determine which license takes precedence in these situations...

jimfrench commented 11 months ago

I'm not a licensing expert but @PhilippeBekaert has very clearly and carefully used licensing statements in each and every file in the repo.

Every file is licensed as GPL-2.0, and with the unambiguous //SPDX-License-Identifier header.

They have also provided much more information in each source file according to the specific original contributors and original authors, and sometimes this differs between source files according to their history.

They have also taken much care to use date and timestamps on each source file, and explicitly written any additional information that may differ between source files about their usage in general.

In my opinion the author clearly intended to implement the license at the source code / file level to avoid ambiguity, and because this is very consistent behaviour and detailed throughout all the files, this may take precedence over the LICENSE file.

I think the authors actual intentions are clear from the above, due to the amount of detail they provided at the source code, and it is therefore odd that the LICENSE is GPL-3.0

It would seem logical that any source file that does NOT have explicit license information in the carefully prepared format by the author, would in turn be defaulted to GPL-3.0 by the LICENSE file. But there are no files that do not have GPL-2.0 license identifier.

As this is a special case I think it should be looked into more detail and advice sought from license maintainers.