From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55032) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cxsJu-0002Lq-Ne for qemu-devel@nongnu.org; Tue, 11 Apr 2017 05:42:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cxsJt-0008Qa-Uj for qemu-devel@nongnu.org; Tue, 11 Apr 2017 05:42:42 -0400 From: Markus Armbruster References: <20170324123458.yk3rj3g47e5xr33i@eukaryote> <0e1c78f3-1b82-58e4-035e-944484e66f29@redhat.com> <20170404132815.aactqo2o5izpzclf@eukaryote> <8420253d-261f-f040-6815-c949b8a2cce2@redhat.com> Date: Tue, 11 Apr 2017 11:42:28 +0200 In-Reply-To: <8420253d-261f-f040-6815-c949b8a2cce2@redhat.com> (Eric Blake's message of "Tue, 4 Apr 2017 08:54:50 -0500") Message-ID: <877f2rcmbf.fsf@dusky.pond.sub.org> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] [Qemu-block] Making QMP 'block-job-cancel' transactionable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eric Blake Cc: Kashyap Chamarthy , John Snow , qemu-devel@nongnu.org, qemu-block@nongnu.org Eric Blake writes: > On 04/04/2017 08:28 AM, Kashyap Chamarthy wrote: > >>> Minor or not, it is a useful viewpoint. Either way, as long as the new >>> way of getting a transactional non-pivot successful completion is >>> something that libvirt can learn via introspection, >> >> Can you elaborate a little more on the above, for my own edification -- >> how might it be possible for "libvirt can learn via introspection"? Is >> it via some method using the QMP 'query-commands' / >> 'query-command-line-options'? > > Those, and query-qmp-schema. Avoid query-command-line-options if you can. If you can't, know its limitations and quirks. > If the change includes the addition of > something new in the .json files describing QMP, then query-qmp-schema > will let libvirt probe whether the version of qemu it it talking to has > that new field or not (presumably, in this case it would be a new > optional bool member to select the mode when creating a job, as well as > a new command visible through query-commands to change the mode of a > running job).