[PATCH] samples/bpf: relicense bpf_insn.h as GPL-2.0-only OR BSD-2-Clause

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Luca Boccassi <bluca@xxxxxxxxxx>

libbpf and bpftool have been dual-licensed to facilitate inclusion in
software that is not compatible with GPL2-only (ie: Apache2), but the
samples are still GPL2-only.

Given these files are samples, they get naturally copied around. For example
it is the case for samples/bpf/bpf_insn.h which was copied into the systemd
tree: https://github.com/systemd/systemd/blob/main/src/shared/linux/bpf_insn.h

Dual-license this header as GPL-2.0-only OR BSD-2-Clause to follow
the same licensing used by libbpf and bpftool:

1bc38b8ff6cc ("libbpf: relicense libbpf as LGPL-2.1 OR BSD-2-Clause")
907b22365115 ("tools: bpftool: dual license all files")

Signed-off-by: Luca Boccassi <bluca@xxxxxxxxxx>
---
Most of systemd is (L)GPL2-or-later, which means there is no perceived
incompatibility with Apache2 softwares and can thus be linked with
OpenSSL 3.0. But given this GPL2-only header is included this is currently
not possible.
Dual-licensing this header solves this problem for us as we are scoping
moving to OpenSSL 3.0, see:

https://lists.freedesktop.org/archives/systemd-devel/2021-September/046882.html

The authors of this file according to git log are:

Alexei Starovoitov <ast@xxxxxxxxxx>
Björn Töpel <bjorn.topel@xxxxxxxxx>
Brendan Jackman <jackmanb@xxxxxxxxxx>
Chenbo Feng <fengc@xxxxxxxxxx>
Daniel Borkmann <daniel@xxxxxxxxxxxxx>
Daniel Mack <daniel@xxxxxxxxxx>
Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>
Jiong Wang <jiong.wang@xxxxxxxxxxxxx>
Joe Stringer <joe@xxxxxxx>
Josef Bacik <jbacik@xxxxxx>

(excludes a commit adding the SPDX header)

All authors and maintainers are CC'ed. An Acked-by from everyone in the
above list of authors will be necessary.

One could probably argue for relicensing all the samples/bpf/ files given both
libbpf and bpftool are, however the authors list would be much larger and thus
it would be much more difficult, so I'd really appreciate if this header could
be handled first by itself, as it solves a real license incompatibility issue
we are currently facing.

 samples/bpf/bpf_insn.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/samples/bpf/bpf_insn.h b/samples/bpf/bpf_insn.h
index aee04534483a..29c3bb6ad1cd 100644
--- a/samples/bpf/bpf_insn.h
+++ b/samples/bpf/bpf_insn.h
@@ -1,4 +1,4 @@
-/* SPDX-License-Identifier: GPL-2.0 */
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
 /* eBPF instruction mini library */
 #ifndef __BPF_INSN_H
 #define __BPF_INSN_H
-- 
2.33.0




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux