qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Add support for new image type


From: Paolo Bonzini
Subject: Re: [Qemu-devel] Add support for new image type
Date: Wed, 16 May 2012 19:48:27 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1

Il 16/05/2012 19:06, Kai Meyer ha scritto:
> 1) It's been suggested to me that since we have the rights to distribute
> our closed source shared library, there is a precedence for being able
> to distributed a modified version of qemu that does run-time linking
> against our shared library. The absence or presence of our shared
> library simply enables or disables support for our file format. We are
> happy to make available all changes to the qemu source code, but we are
> not in a position to re-license our shared library's source code to a
> compatible GPL license. This seems to be in contradiction to Paolo's
> statement above, so while I can't resist asking if this is possible, I
> don't have any realistic expectation that this is acceptable.

That's really getting into grey areas.  IANAL, so I cannot answer this
question.

But as an aside, the GPL _does_ give you rights to distribute any
modification you make to QEMU.  The right questions to ask are:

1) a practical question: would the QEMU community accept that
contribution?  The answer here is "most likely not".

2) a legal question (i.e. the question that a court would answer): what
are the rights of the _recipients_ of your version (and especially of
the copyright holders of QEMU)?  Do they have rights to ask you for the
source code to the shared library, and to receive it under the GPL?
Again I cannot answer here (and I couldn't even if I were a lawyer).

(Remember that however what we proposed was not just relicensing your
library source code, but alternatively to rewrite it from scratch with
no particular attention to performance.  That would be a completely
different story, probably also for your lawyers.  You could also share
any internal spec you have and hire someone to write the QEMU interface
for you, basically a form of clean-room reverse engineering).

> 2) The GPL has provisions for you to create an exception where you have
> specified a controlled interface. Am I right that qemu has not added
> this controlled interface exception for file format access? What are
> your thoughts on adding this exception if it is not present? I would
> think that "struct BlockDriver" would make an excellent candidate for this.

This would have to be applied to all files (not just block/*.c say) and
agreed upon by all QEMU copyright holders.  The second condition is
quite obvious, the first I'll spend a few more words on.

The first condition is because the code overall can be distributed as
long as it fulfills all existing licenses.  QEMU right now has files
under BSD, GPLv2, GPLv2-or-later, LGPLv2.1-or-later and perhaps some
more licenses.  You can take code from individual files (or complete
files) and reuse it under the license indicated in the header of that
file.  However, you can only distribute QEMU as a whole under the
intersection of those licenses, which is GPLv2.  If you add another
license to the mix ("GPL+controlled interface") for block/*.c, QEMU as a
whole could still only be distributed under GPLv2.

> On a personal note, I am an open source enthusiast, so the last thing I
> would want to do is to help alienate the relationship between qemu and
> storagecraft. I'm not asking these questions to look for a legal corner
> to worm my way into, but because I love open source software, and I want
> to learn how to play nicely. (Plus there's that virtualization
> "coolness" factor to this solution that I can't resist.)

Sure, personally I appreciate your honesty even though I disagree with
your goal. :)

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]