Message ID | 20191021145839.12684-1-peter.maydell@linaro.org |
---|---|
State | New |
Headers | show |
Series | tcg/LICENSE: Remove no-longer-true statement that TCG is BSD-licensed | expand |
On 21/10/19 16:58, Peter Maydell wrote: > Does having tcg/ be BSD-licensed gain the project anything? > From my point of view I don't really see it as a cleanly > separable module of code -- it's quite tightly integrated > with the rest of QEMU, including code in accel/tcg which > is variously GPL or LGPL. I think the original idea was to reuse it outside QEMU, for example in TCC (which is LGPLv2.1+) but that was a while ago. Paolo
On Mon, 21 Oct 2019 at 16:19, Paolo Bonzini <pbonzini@redhat.com> wrote: > > On 21/10/19 16:58, Peter Maydell wrote: > > Does having tcg/ be BSD-licensed gain the project anything? > > From my point of view I don't really see it as a cleanly > > separable module of code -- it's quite tightly integrated > > with the rest of QEMU, including code in accel/tcg which > > is variously GPL or LGPL. > > I think the original idea was to reuse it outside QEMU, for example in > TCC (which is LGPLv2.1+) but that was a while ago. I just downloaded and had a quick look at TCC and its current codegen implementation seems to be entirely unrelated to TCG. thanks -- PMM
On 10/21/19 7:58 AM, Peter Maydell wrote: > Since 2008 the tcg/LICENSE file has not changed: it claims that > everything under tcg/ is BSD-licensed. > > This is not true and hasn't been true for years: in 2013 we > accepted the tcg/aarch64 target code under a GPLv2-or-later > license statement. We don't really consider the tcg > subdirectory to be a distinct part of QEMU anyway. > > Remove the LICENSE file, since claiming false information > about the license of the code is confusing, and update > the main project LICENSE file also to be clearer about > the license used by TCG. > > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > This patch takes the simple approach of just documenting > the de-facto current reality; does anybody want to argue > for something else? Other possibilities I guess would be > specifically documenting tcg/aarch64 as an accidental > exception to the general licensing rule for tcg/, or even > trying to get it relicensed. > > Does having tcg/ be BSD-licensed gain the project anything? > From my point of view I don't really see it as a cleanly > separable module of code -- it's quite tightly integrated > with the rest of QEMU, including code in accel/tcg which > is variously GPL or LGPL. I think this is the best solution. I've never been convinced that TCG can usefully be extracted and reused for something else. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 10/21/19 8:52 AM, Richard Henderson wrote: > On 10/21/19 7:58 AM, Peter Maydell wrote: >> Since 2008 the tcg/LICENSE file has not changed: it claims that >> everything under tcg/ is BSD-licensed. >> >> This is not true and hasn't been true for years: in 2013 we >> accepted the tcg/aarch64 target code under a GPLv2-or-later >> license statement. We don't really consider the tcg >> subdirectory to be a distinct part of QEMU anyway. >> >> Remove the LICENSE file, since claiming false information >> about the license of the code is confusing, and update >> the main project LICENSE file also to be clearer about >> the license used by TCG. >> >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> >> --- >> This patch takes the simple approach of just documenting >> the de-facto current reality; does anybody want to argue >> for something else? Other possibilities I guess would be >> specifically documenting tcg/aarch64 as an accidental >> exception to the general licensing rule for tcg/, or even >> trying to get it relicensed. >> >> Does having tcg/ be BSD-licensed gain the project anything? >> From my point of view I don't really see it as a cleanly >> separable module of code -- it's quite tightly integrated >> with the rest of QEMU, including code in accel/tcg which >> is variously GPL or LGPL. > > I think this is the best solution. I've never been convinced that TCG can > usefully be extracted and reused for something else. > > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Queued to tcg-next, as I think there's a couple of other things pending. r~
On Mon, 21 Oct 2019 at 17:26, Richard Henderson <richard.henderson@linaro.org> wrote: > > On 10/21/19 8:52 AM, Richard Henderson wrote: > > On 10/21/19 7:58 AM, Peter Maydell wrote: > >> Since 2008 the tcg/LICENSE file has not changed: it claims that > >> everything under tcg/ is BSD-licensed. > >> > >> This is not true and hasn't been true for years: in 2013 we > >> accepted the tcg/aarch64 target code under a GPLv2-or-later > >> license statement. We don't really consider the tcg > >> subdirectory to be a distinct part of QEMU anyway. > >> > >> Remove the LICENSE file, since claiming false information > >> about the license of the code is confusing, and update > >> the main project LICENSE file also to be clearer about > >> the license used by TCG. > >> > >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > >> --- > >> This patch takes the simple approach of just documenting > >> the de-facto current reality; does anybody want to argue > >> for something else? Other possibilities I guess would be > >> specifically documenting tcg/aarch64 as an accidental > >> exception to the general licensing rule for tcg/, or even > >> trying to get it relicensed. > >> > >> Does having tcg/ be BSD-licensed gain the project anything? > >> From my point of view I don't really see it as a cleanly > >> separable module of code -- it's quite tightly integrated > >> with the rest of QEMU, including code in accel/tcg which > >> is variously GPL or LGPL. > > > > I think this is the best solution. I've never been convinced that TCG can > > usefully be extracted and reused for something else. > > > > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> > > Queued to tcg-next, as I think there's a couple of other things pending. As a licensing issue, I think it would be better to have it on-list for review/comment by interested people for a bit longer than that -- it's not like it really needs to get in before the softfreeze. thanks -- PMM
On Mon, 21 Oct 2019 at 17:27, Peter Maydell <peter.maydell@linaro.org> wrote: > > On Mon, 21 Oct 2019 at 17:26, Richard Henderson > <richard.henderson@linaro.org> wrote: > > Queued to tcg-next, as I think there's a couple of other things pending. > > As a licensing issue, I think it would be better to have it on-list > for review/comment by interested people for a bit longer > than that -- it's not like it really needs to get in before > the softfreeze. It's been pointed out to me also that tcg/*/tcg-target.opc.h are missing a licence/copyright boilerplate header. Since we're removing the "tcg/ is all BSD" note we should add "this file is BSD" to those files at this point. thanks -- PMM
On Mon, 21 Oct 2019 at 15:58, Peter Maydell <peter.maydell@linaro.org> wrote: > Since 2008 the tcg/LICENSE file has not changed: it claims that > everything under tcg/ is BSD-licensed. > > This is not true and hasn't been true for years: in 2013 we > accepted the tcg/aarch64 target code under a GPLv2-or-later > license statement. We don't really consider the tcg > subdirectory to be a distinct part of QEMU anyway. This commit message misses the other not-BSD bits of code in tcg/: tcg/tci.c is GPL-2-or-later tcg/tcg-gvec-desc.h, tcg/tcg-op-gvec.[ch], tcg-op-vec.c are LGPL2.1-or-later Horse has clearly bolted further from the stable than I had first thought. thanks -- PMM
On Mon, Oct 21, 2019 at 05:36:49PM +0100, Peter Maydell wrote: > On Mon, 21 Oct 2019 at 15:58, Peter Maydell <peter.maydell@linaro.org> wrote: > > Since 2008 the tcg/LICENSE file has not changed: it claims that > > everything under tcg/ is BSD-licensed. > > > > This is not true and hasn't been true for years: in 2013 we > > accepted the tcg/aarch64 target code under a GPLv2-or-later > > license statement. We don't really consider the tcg > > subdirectory to be a distinct part of QEMU anyway. > > This commit message misses the other not-BSD bits of code in tcg/: > tcg/tci.c is GPL-2-or-later > tcg/tcg-gvec-desc.h, tcg/tcg-op-gvec.[ch], tcg-op-vec.c are LGPL2.1-or-later > > Horse has clearly bolted further from the stable than > I had first thought. No matter what text we put in the top LICENSE file is always going to be rather vague because of the many different licenses scattered across the codebase. We really ought to make an effort to add SPDX tags to every file in the source tree & have checkpatch.pl enforce that all new files come with SPDX tags too. Identifying licenses for code then becomes a trivial grep. NB, I'm only suggesting add SPDX /in addition/ to the current license boilerplate, as removing existing boilerplate license text from a file can only be done by agreement with the copyright holder(s). Regards, Daniel
On Mon, 21 Oct 2019 at 17:46, Daniel P. Berrangé <berrange@redhat.com> wrote: > > On Mon, Oct 21, 2019 at 05:36:49PM +0100, Peter Maydell wrote: > > On Mon, 21 Oct 2019 at 15:58, Peter Maydell <peter.maydell@linaro.org> wrote: > > > Since 2008 the tcg/LICENSE file has not changed: it claims that > > > everything under tcg/ is BSD-licensed. > > > > > > This is not true and hasn't been true for years: in 2013 we > > > accepted the tcg/aarch64 target code under a GPLv2-or-later > > > license statement. We don't really consider the tcg > > > subdirectory to be a distinct part of QEMU anyway. > > > > This commit message misses the other not-BSD bits of code in tcg/: > > tcg/tci.c is GPL-2-or-later > > tcg/tcg-gvec-desc.h, tcg/tcg-op-gvec.[ch], tcg-op-vec.c are LGPL2.1-or-later > > > > Horse has clearly bolted further from the stable than > > I had first thought. > > No matter what text we put in the top LICENSE file is always going to be > rather vague because of the many different licenses scattered across the > codebase. There's two parts to this: (1) is what we say in LICENSE what we actually have in practice? (answer: clearly "no") (2) as a policy, do we want to be stricter about the license for code contributed to tcg/ than to the rest of the codebase? (which is what this patch is trying to flush out answers to) > We really ought to make an effort to add SPDX tags to every file in the > source tree & have checkpatch.pl enforce that all new files come with > SPDX tags too. Identifying licenses for code then becomes a trivial grep. My take on SPDX is still the same as it was last year: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg04151.html thanks -- PMM
On 21/10/19 18:55, Peter Maydell wrote: > There's two parts to this: > (1) is what we say in LICENSE what we actually have in practice? > (answer: clearly "no") > (2) as a policy, do we want to be stricter about the license > for code contributed to tcg/ than to the rest of the codebase? > (which is what this patch is trying to flush out answers to) > ... and from these points of view, your patch is definitely an improvement. Paolo
(+Ard, Alex) On 10/21/19 17:52, Richard Henderson wrote: > On 10/21/19 7:58 AM, Peter Maydell wrote: >> Since 2008 the tcg/LICENSE file has not changed: it claims that >> everything under tcg/ is BSD-licensed. >> >> This is not true and hasn't been true for years: in 2013 we >> accepted the tcg/aarch64 target code under a GPLv2-or-later >> license statement. We don't really consider the tcg >> subdirectory to be a distinct part of QEMU anyway. >> >> Remove the LICENSE file, since claiming false information >> about the license of the code is confusing, and update >> the main project LICENSE file also to be clearer about >> the license used by TCG. >> >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> >> --- >> This patch takes the simple approach of just documenting >> the de-facto current reality; does anybody want to argue >> for something else? Other possibilities I guess would be >> specifically documenting tcg/aarch64 as an accidental >> exception to the general licensing rule for tcg/, or even >> trying to get it relicensed. >> >> Does having tcg/ be BSD-licensed gain the project anything? >> From my point of view I don't really see it as a cleanly >> separable module of code -- it's quite tightly integrated >> with the rest of QEMU, including code in accel/tcg which >> is variously GPL or LGPL. > > I think this is the best solution. I've never been convinced that TCG can > usefully be extracted and reused for something else. Side comment: Ard and Alex extracted TCG to run x86 PCIe UEFI option ROMs on aarch64 hardware. https://github.com/ardbiesheuvel/X86EmulatorPkg https://kvmforum2017.sched.com/event/Bo0S/qemu-in-uefi-alexander-graf-suse https://www.youtube.com/watch?v=uxvAH1Q4Mx0 If I remember correctly, they specifically picked a git commit hash that was still purely BSD licensed. FWIW, <https://github.com/ardbiesheuvel/X86EmulatorPkg/blob/master/LICENSE> is not any BSD license, so I'm almost surely out of date on that aspect; just wanted to confirm that TCG has been usefully extracted. Thanks, Laszlo > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> > > > r~ >
On Mon, 21 Oct 2019 at 19:57, Laszlo Ersek <lersek@redhat.com> wrote: > > (+Ard, Alex) > > On 10/21/19 17:52, Richard Henderson wrote: > > On 10/21/19 7:58 AM, Peter Maydell wrote: > >> Since 2008 the tcg/LICENSE file has not changed: it claims that > >> everything under tcg/ is BSD-licensed. > >> > >> This is not true and hasn't been true for years: in 2013 we > >> accepted the tcg/aarch64 target code under a GPLv2-or-later > >> license statement. We don't really consider the tcg > >> subdirectory to be a distinct part of QEMU anyway. > >> > >> Remove the LICENSE file, since claiming false information > >> about the license of the code is confusing, and update > >> the main project LICENSE file also to be clearer about > >> the license used by TCG. > >> > >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > >> --- > >> This patch takes the simple approach of just documenting > >> the de-facto current reality; does anybody want to argue > >> for something else? Other possibilities I guess would be > >> specifically documenting tcg/aarch64 as an accidental > >> exception to the general licensing rule for tcg/, or even > >> trying to get it relicensed. > >> > >> Does having tcg/ be BSD-licensed gain the project anything? > >> From my point of view I don't really see it as a cleanly > >> separable module of code -- it's quite tightly integrated > >> with the rest of QEMU, including code in accel/tcg which > >> is variously GPL or LGPL. > > > > I think this is the best solution. I've never been convinced that TCG can > > usefully be extracted and reused for something else. > > Side comment: > > Ard and Alex extracted TCG to run x86 PCIe UEFI option ROMs on aarch64 > hardware. > > https://github.com/ardbiesheuvel/X86EmulatorPkg > https://kvmforum2017.sched.com/event/Bo0S/qemu-in-uefi-alexander-graf-suse > https://www.youtube.com/watch?v=uxvAH1Q4Mx0 > > If I remember correctly, they specifically picked a git commit hash that > was still purely BSD licensed. > > FWIW, > <https://github.com/ardbiesheuvel/X86EmulatorPkg/blob/master/LICENSE> is > not any BSD license, so I'm almost surely out of date on that aspect; > just wanted to confirm that TCG has been usefully extracted. > This commit has the background info https://github.com/ardbiesheuvel/X86EmulatorPkg/commit/552c44d2cbc778f3e53d6d3985a8787c7df99733
(uses Alex's working email address) On Mon, 21 Oct 2019 at 21:52, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > > On Mon, 21 Oct 2019 at 19:57, Laszlo Ersek <lersek@redhat.com> wrote: > > > > (+Ard, Alex) > > > > On 10/21/19 17:52, Richard Henderson wrote: > > > On 10/21/19 7:58 AM, Peter Maydell wrote: > > >> Since 2008 the tcg/LICENSE file has not changed: it claims that > > >> everything under tcg/ is BSD-licensed. > > >> > > >> This is not true and hasn't been true for years: in 2013 we > > >> accepted the tcg/aarch64 target code under a GPLv2-or-later > > >> license statement. We don't really consider the tcg > > >> subdirectory to be a distinct part of QEMU anyway. > > >> > > >> Remove the LICENSE file, since claiming false information > > >> about the license of the code is confusing, and update > > >> the main project LICENSE file also to be clearer about > > >> the license used by TCG. > > >> > > >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > > >> --- > > >> This patch takes the simple approach of just documenting > > >> the de-facto current reality; does anybody want to argue > > >> for something else? Other possibilities I guess would be > > >> specifically documenting tcg/aarch64 as an accidental > > >> exception to the general licensing rule for tcg/, or even > > >> trying to get it relicensed. > > >> > > >> Does having tcg/ be BSD-licensed gain the project anything? > > >> From my point of view I don't really see it as a cleanly > > >> separable module of code -- it's quite tightly integrated > > >> with the rest of QEMU, including code in accel/tcg which > > >> is variously GPL or LGPL. > > > > > > I think this is the best solution. I've never been convinced that TCG can > > > usefully be extracted and reused for something else. > > > > Side comment: > > > > Ard and Alex extracted TCG to run x86 PCIe UEFI option ROMs on aarch64 > > hardware. > > > > https://github.com/ardbiesheuvel/X86EmulatorPkg > > https://kvmforum2017.sched.com/event/Bo0S/qemu-in-uefi-alexander-graf-suse > > https://www.youtube.com/watch?v=uxvAH1Q4Mx0 > > > > If I remember correctly, they specifically picked a git commit hash that > > was still purely BSD licensed. > > > > FWIW, > > <https://github.com/ardbiesheuvel/X86EmulatorPkg/blob/master/LICENSE> is > > not any BSD license, so I'm almost surely out of date on that aspect; > > just wanted to confirm that TCG has been usefully extracted. > > > > This commit has the background info > https://github.com/ardbiesheuvel/X86EmulatorPkg/commit/552c44d2cbc778f3e53d6d3985a8787c7df99733
diff --git a/LICENSE b/LICENSE index 9389ba614f8..e916360844f 100644 --- a/LICENSE +++ b/LICENSE @@ -18,8 +18,8 @@ As of July 2013, contributions under version 2 of the GNU General Public License (and no later version) are only accepted for the following files or directories: bsd-user/, linux-user/, hw/vfio/, hw/xen/xen_pt*. -3) The Tiny Code Generator (TCG) is released under the BSD license - (see license headers in files). +3) The Tiny Code Generator (TCG) is mostly under the BSD license; + but some parts may be GPLv2 (see license headers in files). 4) QEMU is a trademark of Fabrice Bellard. diff --git a/tcg/LICENSE b/tcg/LICENSE deleted file mode 100644 index be817fa1625..00000000000 --- a/tcg/LICENSE +++ /dev/null @@ -1,3 +0,0 @@ -All the files in this directory and subdirectories are released under -a BSD like license (see header in each file). No other license is -accepted.
Since 2008 the tcg/LICENSE file has not changed: it claims that everything under tcg/ is BSD-licensed. This is not true and hasn't been true for years: in 2013 we accepted the tcg/aarch64 target code under a GPLv2-or-later license statement. We don't really consider the tcg subdirectory to be a distinct part of QEMU anyway. Remove the LICENSE file, since claiming false information about the license of the code is confusing, and update the main project LICENSE file also to be clearer about the license used by TCG. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- This patch takes the simple approach of just documenting the de-facto current reality; does anybody want to argue for something else? Other possibilities I guess would be specifically documenting tcg/aarch64 as an accidental exception to the general licensing rule for tcg/, or even trying to get it relicensed. Does having tcg/ be BSD-licensed gain the project anything? From my point of view I don't really see it as a cleanly separable module of code -- it's quite tightly integrated with the rest of QEMU, including code in accel/tcg which is variously GPL or LGPL. LICENSE | 4 ++-- tcg/LICENSE | 3 --- 2 files changed, 2 insertions(+), 5 deletions(-) delete mode 100644 tcg/LICENSE