[libvirt] [Qemu-devel] Transitioning from HMP to QMP for QEMU

Jan Kiszka jan.kiszka at siemens.com
Thu Dec 15 13:39:50 UTC 2011


On 2011-12-15 14:38, Lucas Meneghel Rodrigues wrote:
> On 12/15/2011 11:33 AM, Kevin Wolf wrote:
>> Am 15.12.2011 14:18, schrieb Jan Kiszka:
>>> On 2011-12-15 14:02, Stefan Hajnoczi wrote:
>>>> What is the status of QEMU's transition from HMP to the QMP interface?
>>>>
>>>> My current understanding is that QEMU provides new HMP commands for
>>>> humans, but HMP is being phased out as an API.  Management tools
>>>> should rely only on QMP for new commands.  That would mean new HMP
>>>> commands are not guaranteed to produce backwards-compatible output
>>>> because tools are not supposed to parse the output.
>>>>
>>>> On the libvirt side, new QEMU features should only be supported via
>>>> the json monitor in the future (i.e. human monitor patches should not
>>>> be sent/merged)?  Existing HMP commands will still need the human
>>>> monitor support in order to handle old QEMU versions gracefully, but
>>>> I'm thinking about new commands only.
>>>>
>>>> Does everyone agree on this?  I think this is an important discussion
>>>> if we want our management interface to get better and more consistent
>>>> in the future.
>>>
>>> To phase out the classic HMP implementation, we need an internal
>>> HMP-over-JSON wrapper (with tab expansion etc.) so that virtual console
>>> and gdbstub monitors continue to benefit from new commands. Those
>>> interfaces will stay for a long time, I'm sure.
>>
>> I think we're not talking about dropping HMP here, only about how long
>> to support it as a stable API for management tools. I believe that we
>> have been in a transitional phase for long enough now that we can start
>> changing the output format of HMP commands without considering it an API
>> breakage.
> 
> Yes, I've got the same impression. But while we are at it, forgive my 
> naiveness, but wouldn't be worthwhile to consider dropping the human 
> monitor in the long run?

Surely not the interface (for virtual console & gdbstub), but the
internal implementation I hope.

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux




More information about the libvir-list mailing list