From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58400) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIDPr-0002i6-2k for qemu-devel@nongnu.org; Tue, 25 Feb 2014 03:31:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WIDPk-0005q2-Ta for qemu-devel@nongnu.org; Tue, 25 Feb 2014 03:31:02 -0500 Received: from mx1.redhat.com ([209.132.183.28]:22806) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIDPk-0005ps-Kx for qemu-devel@nongnu.org; Tue, 25 Feb 2014 03:30:56 -0500 Message-ID: <530C54B4.10102@redhat.com> Date: Tue, 25 Feb 2014 09:30:44 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <20140221091629.GE11907@stefanha-thinkpad.redhat.com> <530764B0.40500@redhat.com> <5307BE7A.5050007@redhat.com> <87ha7o6hhj.fsf@blackfin.pond.sub.org> <530B6E85.30709@redhat.com> <87y50zsinq.fsf@blackfin.pond.sub.org> In-Reply-To: <87y50zsinq.fsf@blackfin.pond.sub.org> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] QOM vs QAPI for QMP APIs List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Markus Armbruster , Eric Blake Cc: Anthony Liguori , qemu-devel@nongnu.org, Michael Roth , Luiz Capitulino , Stefan Hajnoczi , Andreas Faerber , Anthony Liguori Il 25/02/2014 09:25, Markus Armbruster ha scritto: >> > Haven't we already done that in the past? For example, object-add >> > currently takes an unspecified dictionary of options, where you would >> > have to consult QOM documentation to learn what makes sense to send. > My question isn't about where the command details are documented, or > even whether they are documented. It's about ABI promises, or lack > thereof. The general promise for QMP is we treat it as stable ABI. If > we add QMP commands to examine and manipulate QOM, doesn't that move all > of QOM under the QMP ABI promise, unless we explicitly excempt it? We did already exempt it, in general. QOM is not declared stable. However, there are parts (-object, and in 2.0 object_add/object-add) that are part of the QEMU API/ABI. Now that we have a way to restrict which classes will be compatible (only classes that are UserCreatable can be created and thus will require backwards compatibility), we need to document those closses. Paolo