@@ -133,13 +133,37 @@ Linux driver code for their hardware and not releasing the source
133
133
code, we leave it to their legal teams to navigate any of the
134
134
intricacies that may be involved in that endeavor.
135
135
136
- Our plan is to release all of the following kinds of source files
136
+ [ 5] is a good introduction to software licensing questions related to
137
+ using EBPF.
138
+
139
+ [ 5] https://ebpf.io/blog/ebpf-licensing-guide/
140
+
141
+ While it is _ possible_ to write restricted EBPF programs that are
142
+ loaded into the Linux kernel that can be distributed under a non-GPL
143
+ license, these are the exception, not the rule.
144
+
145
+ Do companies using EBPF distribute these programs under GPL 2.0? Yes,
146
+ they commonly do. The EBPF code loaded and run in the Linux kernel is
147
+ the "data plane" part of the system. The "control plane" part of the
148
+ system runs in user space applications on Linux, and these can be
149
+ distributed under other licenses, including proprietary licenses. 98%
150
+ or more of the code of these systems is in the control plane code.
151
+ The data plane code by itself is unlikely to cause any significant
152
+ loss of competitive advantage to publicize it.
153
+
154
+ Thus our plan is to release all of the following kinds of source files
137
155
under the GPL v2.0 license, the same as the Linux kernel:
138
156
139
157
(a) files that are intended to be compiled and loaded into the kernel
140
158
via EBPF.
141
159
(b) header files included from files in category (a).
142
160
161
+ Note that this list of files appear to consist of _ only_ 2 source
162
+ files in the entire p4c repository. Most of the source files related
163
+ to EBPF are part of a p4c back end that uses EBPF, which can be
164
+ Apache-2.0 licensed, or they are control plane source files used for
165
+ testing the EBPF programs loaded into the kernel.
166
+
143
167
If any subtle questions arise as to whether a particular P4 compiler
144
168
back end, e.g. ` p4c-ebpf ` , must thus be released under GPL v2.0, we
145
169
will raise these questions to the P4 Technical Steering Team for their
0 commit comments