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

[Xen-devel] ACPI builder re-licensing



Starting a new thread on ACPI code re-licensing, continuing from
https://lists.xenproject.org/archives/html/xen-devel/2016-07/msg01245.html

Summary
======

While working on refactoring ACPI builder code from
tools/firmware/hvmloader/acpi/ and making it available to both hvmloader
and libxl/libxc (and possibly, in the future, to the hypervisor) we
realized that these two components use different licenses: the former is
licensed under GPLv2 and the latter uses LGPL.

The proposal is to re-license the builder to LGPL which should allow us
to have it linked against both GPLv2 and LGPL code (and possibly other
licenses?)


Details
=====

Currently we have:
ostr@workbase> ls -l tools/firmware/hvmloader/acpi/
total 116
-rw-rw-r-- 1 ostr ostr 11388 Sep  1  2015 acpi2_0.h
-rw-rw-r-- 1 ostr ostr 21010 Jun 22 10:51 build.c
-rw-rw-r-- 1 ostr ostr 16856 Jun 22 10:51 dsdt.asl
-rw-rw-r-- 1 ostr ostr  2023 Sep  1  2015 Makefile
-rw-rw-r-- 1 ostr ostr 15452 Jun 22 10:51 mk_dsdt.c
-rw-rw-r-- 1 ostr ostr   618 Feb  3  2015 README
-rw-rw-r-- 1 ostr ostr 12694 Sep  1  2015 ssdt_pm.asl
-rw-rw-r-- 1 ostr ostr   999 Sep  1  2015 ssdt_s3.asl
-rw-rw-r-- 1 ostr ostr   999 Sep  1  2015 ssdt_s4.asl
-rw-rw-r-- 1 ostr ostr   978 Sep  1  2015 ssdt_tpm.asl
-rw-rw-r-- 1 ostr ostr  5474 Sep  1  2015 static_tables.c

All these files are under GPLv2

The idea is to make code that lives in tools/firmware/hvmloader/acpi
available to
* hmloader (GPLv2)
* libxl/libxc (LGPL)
* possibly the hypervisor (although that's not on the table at the moment)

No static or dynamic library will be created. Just like in the case of
libelf, each component will link object files from tools/libacpi
directory. Specifically, they will link:
* build.o static_tables.o
* dsdt_*.o, which is compiled from dsdt_*.c, which is generated from
dsdt.asl by iasl and mk_dsdt.

The C files (corresponding to the objects above) will include acpi2_0.h,
ssdt_*.h (generated by iasl from ssdt_*.asl).

In addition, chunks of acpi2_0.h and build.c (structure definitions)
will be excised into newly created libacpi.h and that file will be
included by consumers (i.e. libxl/libxc and hvmloader). libacpi.h will
also include acpi2_0.h. dsdt.asl will be broken into two files, both of
which will be used by iasl.

It's probably worth noting that the builder does not make any further
calls with the exception of:
* standard C utilities such as printf and strcmp
* callbacks into the caller (libxl/libxc or hvmloader) via function
pointers provided by the caller.


Who needs to be notified
===============

Assuming that S-o-b and From are a good indication of who needs to be
notified of the change (and needs to ack it):

ostr@workbase> git log tools/firmware/hvmloader/acpi | egrep
"Signed|From" | sed -e 's/.*@/ /g' | sort | uniq -c
      1  citrix.com
     73  citrix.com>
      1  debian.org>
      5  eu.citrix.com>
     18  intel.com>
      2  jp.fujitsu.com>
      1  net-space.pl>
      1  novell.com>
      1  oracle.com>
      1  redhat.com>
      1  sun.com>
      8  suse.com>
      1  us.ibm.com>
      6  verge.net.au>
      4  xen.org>
     25  xensource.com>


which indicated major contributions (and therefore a required ack) from
Citrix/Xensource, Suse/Novell, Oracle/Sun, Intel.

For the rest ("trivial" or "simple" is, of course, a matter of opinion):

* debian.com is a single trivial patch to a Makefile
   
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=83f34fdcdd26c3dcc793c571e7b75c705bd92e7a
 
* Fujitsu provided two patches, one trivial the other not completely trivial
 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e451db15ef6198f5d21b84618c833ac276087d70
 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=ab438874b6a8ae955b337c36e7b3204e29b8d407

* net-space.pl is Daniel Kiper's (now, but not at the patch's time, at
Oracle) ISP. The patch is
 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=37fddaa5fe1a7e369827e4b9e25cdae5df9b3d7d

* redhat is one trivial patch by Paolo Bonzini that has been reversed later:
 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e4fd0475a08fda414da27c4e57b568f147cfc07e

* IBM one patch from Stefan Berger
 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=9fd9787b0e7995ac5f2da504b92723c24d6a3737

  (plus what seems to inclusion of his work in
   
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=883236e49a86a0174c6df61cac995ebf16d72b35)

  Also, ssdt_tpm.asl is explicitly copyrighted by IBM

* A bunch of patches from from Simon Horman at Verge

* xen.org are S-o-b by Keir, all from 2011.



-boris


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.