As a general rule, HMP commands must be built on top of the QMP API.
Luiz and others have worked long & hard to make HMP conform to this
rule.

However, a new command has crept in that violates it.

QMP's chardev-add runs qmp_chardev_add(), which supports backends

* file with parameters in, out

* port with parameters type (serial, parallel), device

* socket with parameters addr, server, wait, nodelay, telnet

* pty

* null

HMP's chardev-add runs hmp_chardev_add(), which is *not* built on to of
QMP.  Instead, it uses qemu_chr_new_from_opts(), which looks more
powerful to me.  Additional backends: udp, msmouse, vc, memory, pipe,
stdio, braille, tty, spicevmc, spiceport.  I haven't checked whether the
backends that are available in QMP support all the parameters that HMP
does.

If we're 100% serious about the rule, we need to disable HMP chardev-add
for the release.

Are we?

Reply via email to