On Mon, Jul 06, 2026 at 12:56:35PM +0200, Markus Armbruster wrote:
Daniel P. Berrangé <berrange@redhat.com> writes:
Add new docs for the `-object monitor-hmp` and `-object monitor-qmp` options, updating `-mon` to state that it is legacy syntax sugar for the new `-object` args.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> --- qemu-options.hx | 61 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 58 insertions(+), 3 deletions(-)
diff --git a/qemu-options.hx b/qemu-options.hx index e44b47de68..1aa548c39b 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -4955,6 +4955,11 @@ SRST port). The default device is ``vc`` in graphical mode and ``stdio`` in non graphical mode. Use ``-monitor none`` to disable the default monitor. + + The use of ``-monitor dev`` is syntax sugar for creating a character
For what it's worth, Wikipedia redirects "syntax sugar" to "syntactic sugar", and uses only the latter in the article.
Ok will use that
Could also use "shorthand". Matter of taste.
+ device from ``dev`` and pairing it with ``-object monitor-hmp``. + Both the character device and monitor object will be given an ID + ``compat_monitorNNN`` where ``NNN`` is a counter starting from 0. ERST DEF("qmp", HAS_ARG, QEMU_OPTION_qmp, \ "-qmp dev like -monitor but opens in 'control' mode\n", @@ -4966,9 +4971,10 @@ SRST
-qmp tcp:localhost:4444,server=on,wait=off
- Not all options are configurable via this syntax; for maximum - flexibility use the ``-mon`` option and an accompanying ``-chardev``. - + The use of ``-monitor dev`` is syntax sugar for creating a character
Pasto, you mean ``-qmp dev``.
/face-palm
+ device from ``dev`` and pairing it with ``-object monitor-qmp``. + Both the character device and monitor object will be given an ID + ``compat_monitorNNN`` where ``NNN`` is a counter starting from 0. ERST DEF("qmp-pretty", HAS_ARG, QEMU_OPTION_qmp_pretty, \ "-qmp-pretty dev like -qmp but uses pretty JSON formatting\n", @@ -4997,6 +5003,16 @@ SRST -mon chardev=mon1,mode=control,pretty=on
enables the QMP monitor on localhost port 4444 with pretty-printing. + + The use of ``-mon mode=readline`` is historical syntax sugar
What does "historical" mean? The next patch replaces it by "deprecated". Suggest to scratch it here.
ok.
@@ -5747,6 +5763,45 @@ SRST they are specified. Note that the 'id' property must be set. These objects are placed in the '/objects' path.
+ ``-object monitor-hmp,id=id,chardev=chardev_id,readline=on|off`` + Set up a monitor running the Human Monitor Protocol, + connected to the chardev ``chardev_id``. + + The ``id`` parameter is a unique ID that can be used + to dynamically delete the monitor at runtime. Note + that monitors created using the historical syntax + will be allocated IDs following the pattern ``hmpcompatNN``.
``compat_monitorNNN``
+ Mixing ``-object`` with the historical monitor syntax is + discouraged.
Clearer, I think: "with -monitor and -mon".
The next patch deprecates -mon, and then this could become just "with -monitor".
ok
+ + The ``readline`` parameter, which defaults to ``on``, + controls whether the monitor provides line editing. + + ``-object monitor-qmp,id=id,chardev=chardev_id,pretty=on|off,close-action=none|delete`` + Set up a monitor running the QEMU Monitor Protocol, + connected to the chardev ``chardev_id``. + + The ``id`` parameter is a unique ID that can be used + to dynamically delete the monitor at runtime. Note + that monitors created using the historical syntax + will be allocated IDs following the pattern ``qmpcompatNN``.
``compat_monitorNNN``
+ Mixing ``-object`` with the historical monitor syntax is + discouraged.
"with -qmp, -qmp-pretty, and -mon".
The next patch deprecates -mon, and then this could become just "with -qmp and -qmp-pretty".
ok
+ + The ``pretty`` parameter, which defaults to ``off``, + controls whether the monitor responses are pretty + printed as multi-line indented JSON, as opposed to + constrained to a single line without extraneous + whitespace. + + The ``close-action`` parameter, which defaults to ``none``, + controls what happens when the connection to the monitor + is terminated by the user. If set to ``delete``, then the + ``monitor-qmp`` object and its associated character + device are both immediately deleted. This can be useful + if an extra monitor was hotplugged for a specific task
Comma after task?
I don't think its needed, but people are horribly inconsistent in use of , before and in English no matter what.
+ and should be unplugged when completed. + ``-object memory-backend-file,id=id,size=size,mem-path=dir,share=on|off,discard-data=on|off,merge=on|off,dump=on|off,prealloc=on|off,host-nodes=host-nodes,policy=default|preferred|bind|interleave,align=align,offset=offset,readonly=on|off,rom=on|off|auto`` Creates a memory file backend object, which can be used to back the guest RAM with huge pages.
With regards, Daniel -- |: https://berrange.com ~~ https://hachyderm.io/@berrange :| |: https://libvirt.org ~~ https://entangle-photo.org :| |: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|