]> git.proxmox.com Git - mirror_qemu.git/blame - hmp-commands.hx
qapi: Convert pmemsave
[mirror_qemu.git] / hmp-commands.hx
CommitLineData
2313086a
BS
1HXCOMM Use DEFHEADING() to define headings in both help text and texi
2HXCOMM Text between STEXI and ETEXI are copied to texi version and
3HXCOMM discarded from C version
4HXCOMM DEF(command, args, callback, arg_string, help) is used to construct
5HXCOMM monitor commands
6HXCOMM HXCOMM can be used for comments, discarded from both texi and C
7
8STEXI
9@table @option
10ETEXI
11
d7f9b689
LC
12 {
13 .name = "help|?",
14 .args_type = "name:s?",
d7f9b689
LC
15 .params = "[cmd]",
16 .help = "show the help",
af4ce882 17 .mhandler.cmd = do_help_cmd,
d7f9b689
LC
18 },
19
2313086a
BS
20STEXI
21@item help or ? [@var{cmd}]
70fcbbe7 22@findex help
2313086a
BS
23Show the help for all commands or just for command @var{cmd}.
24ETEXI
25
d7f9b689
LC
26 {
27 .name = "commit",
28 .args_type = "device:B",
d7f9b689
LC
29 .params = "device|all",
30 .help = "commit changes to the disk images (if -snapshot is used) or backing files",
af4ce882 31 .mhandler.cmd = do_commit,
d7f9b689
LC
32 },
33
2313086a
BS
34STEXI
35@item commit
70fcbbe7 36@findex commit
2313086a 37Commit changes to the disk images (if -snapshot is used) or backing files.
2313086a
BS
38ETEXI
39
d7f9b689
LC
40 {
41 .name = "q|quit",
42 .args_type = "",
d7f9b689
LC
43 .params = "",
44 .help = "quit the emulator",
b223f35f 45 .user_print = monitor_user_noop,
7a7f325e 46 .mhandler.cmd = hmp_quit,
d7f9b689
LC
47 },
48
2313086a
BS
49STEXI
50@item q or quit
70fcbbe7 51@findex quit
2313086a
BS
52Quit the emulator.
53ETEXI
54
6d4a2b3a
CH
55 {
56 .name = "block_resize",
57 .args_type = "device:B,size:o",
58 .params = "device size",
59 .help = "resize a block image",
60 .user_print = monitor_user_noop,
61 .mhandler.cmd_new = do_block_resize,
62 },
63
64STEXI
65@item block_resize
66@findex block_resize
67Resize a block image while a guest is running. Usually requires guest
68action to see the updated size. Resize to a lower size is supported,
69but should be used with extreme caution. Note that this command only
70resizes image files, it can not resize block devices like LVM volumes.
71ETEXI
72
73
d7f9b689
LC
74 {
75 .name = "eject",
78d714e0 76 .args_type = "force:-f,device:B",
d7f9b689
LC
77 .params = "[-f] device",
78 .help = "eject a removable medium (use -f to force it)",
e1c923a6 79 .user_print = monitor_user_noop,
261394db 80 .mhandler.cmd_new = do_eject,
d7f9b689
LC
81 },
82
2313086a
BS
83STEXI
84@item eject [-f] @var{device}
70fcbbe7 85@findex eject
2313086a 86Eject a removable medium (use -f to force it).
9063f814
RH
87ETEXI
88
89 {
90 .name = "drive_del",
91 .args_type = "id:s",
92 .params = "device",
93 .help = "remove host block device",
94 .user_print = monitor_user_noop,
95 .mhandler.cmd_new = do_drive_del,
96 },
97
98STEXI
99@item drive_del @var{device}
100@findex drive_del
101Remove host block device. The result is that guest generated IO is no longer
102submitted against the host device underlying the disk. Once a drive has
103been deleted, the QEMU Block layer returns -EIO which results in IO
104errors in the guest for applications that are reading/writing to the device.
2313086a
BS
105ETEXI
106
d7f9b689
LC
107 {
108 .name = "change",
109 .args_type = "device:B,target:F,arg:s?",
d7f9b689
LC
110 .params = "device filename [format]",
111 .help = "change a removable medium, optional format",
ec3b82af 112 .user_print = monitor_user_noop,
261394db 113 .mhandler.cmd_new = do_change,
d7f9b689
LC
114 },
115
2313086a
BS
116STEXI
117@item change @var{device} @var{setting}
70fcbbe7 118@findex change
2313086a
BS
119
120Change the configuration of a device.
121
122@table @option
123@item change @var{diskdevice} @var{filename} [@var{format}]
124Change the medium for a removable disk device to point to @var{filename}. eg
125
126@example
127(qemu) change ide1-cd0 /path/to/some.iso
128@end example
129
130@var{format} is optional.
131
132@item change vnc @var{display},@var{options}
133Change the configuration of the VNC server. The valid syntax for @var{display}
134and @var{options} are described at @ref{sec_invocation}. eg
135
136@example
137(qemu) change vnc localhost:1
138@end example
139
140@item change vnc password [@var{password}]
141
142Change the password associated with the VNC server. If the new password is not
143supplied, the monitor will prompt for it to be entered. VNC passwords are only
144significant up to 8 letters. eg
145
146@example
147(qemu) change vnc password
148Password: ********
149@end example
150
151@end table
152ETEXI
153
d7f9b689
LC
154 {
155 .name = "screendump",
156 .args_type = "filename:F",
d7f9b689
LC
157 .params = "filename",
158 .help = "save screen into PPM image 'filename'",
f1dc58e0
LC
159 .user_print = monitor_user_noop,
160 .mhandler.cmd_new = do_screen_dump,
d7f9b689
LC
161 },
162
2313086a
BS
163STEXI
164@item screendump @var{filename}
70fcbbe7 165@findex screendump
2313086a
BS
166Save screen into PPM image @var{filename}.
167ETEXI
168
d7f9b689
LC
169 {
170 .name = "logfile",
171 .args_type = "filename:F",
d7f9b689
LC
172 .params = "filename",
173 .help = "output logs to 'filename'",
af4ce882 174 .mhandler.cmd = do_logfile,
d7f9b689
LC
175 },
176
2313086a
BS
177STEXI
178@item logfile @var{filename}
70fcbbe7 179@findex logfile
2313086a
BS
180Output logs to @var{filename}.
181ETEXI
182
22890ab5
PS
183 {
184 .name = "trace-event",
185 .args_type = "name:s,option:b",
186 .params = "name on|off",
187 .help = "changes status of a specific trace event",
fc764105 188 .mhandler.cmd = do_trace_event_set_state,
22890ab5
PS
189 },
190
191STEXI
192@item trace-event
193@findex trace-event
194changes status of a trace event
c5ceb523
SH
195ETEXI
196
c45a8168 197#if defined(CONFIG_TRACE_SIMPLE)
c5ceb523
SH
198 {
199 .name = "trace-file",
200 .args_type = "op:s?,arg:F?",
201 .params = "on|off|flush|set [arg]",
202 .help = "open, close, or flush trace file, or set a new file name",
203 .mhandler.cmd = do_trace_file,
204 },
205
206STEXI
207@item trace-file on|off|flush
208@findex trace-file
209Open, close, or flush the trace file. If no argument is given, the status of the trace file is displayed.
22890ab5
PS
210ETEXI
211#endif
212
d7f9b689
LC
213 {
214 .name = "log",
215 .args_type = "items:s",
d7f9b689
LC
216 .params = "item1[,...]",
217 .help = "activate logging of the specified items to '/tmp/qemu.log'",
af4ce882 218 .mhandler.cmd = do_log,
d7f9b689
LC
219 },
220
2313086a
BS
221STEXI
222@item log @var{item1}[,...]
70fcbbe7 223@findex log
2313086a
BS
224Activate logging of the specified items to @file{/tmp/qemu.log}.
225ETEXI
226
d7f9b689
LC
227 {
228 .name = "savevm",
229 .args_type = "name:s?",
d7f9b689
LC
230 .params = "[tag|id]",
231 .help = "save a VM snapshot. If no tag or id are provided, a new snapshot is created",
af4ce882 232 .mhandler.cmd = do_savevm,
d7f9b689
LC
233 },
234
2313086a
BS
235STEXI
236@item savevm [@var{tag}|@var{id}]
70fcbbe7 237@findex savevm
2313086a
BS
238Create a snapshot of the whole virtual machine. If @var{tag} is
239provided, it is used as human readable identifier. If there is already
240a snapshot with the same tag or ID, it is replaced. More info at
241@ref{vm_snapshots}.
242ETEXI
243
d7f9b689
LC
244 {
245 .name = "loadvm",
246 .args_type = "name:s",
d7f9b689
LC
247 .params = "tag|id",
248 .help = "restore a VM snapshot from its tag or id",
af4ce882 249 .mhandler.cmd = do_loadvm,
d7f9b689
LC
250 },
251
2313086a
BS
252STEXI
253@item loadvm @var{tag}|@var{id}
70fcbbe7 254@findex loadvm
2313086a
BS
255Set the whole virtual machine to the snapshot identified by the tag
256@var{tag} or the unique snapshot ID @var{id}.
257ETEXI
258
d7f9b689
LC
259 {
260 .name = "delvm",
261 .args_type = "name:s",
d7f9b689
LC
262 .params = "tag|id",
263 .help = "delete a VM snapshot from its tag or id",
af4ce882 264 .mhandler.cmd = do_delvm,
d7f9b689
LC
265 },
266
2313086a
BS
267STEXI
268@item delvm @var{tag}|@var{id}
70fcbbe7 269@findex delvm
2313086a
BS
270Delete the snapshot identified by @var{tag} or @var{id}.
271ETEXI
272
d7f9b689
LC
273 {
274 .name = "singlestep",
275 .args_type = "option:s?",
d7f9b689
LC
276 .params = "[on|off]",
277 .help = "run emulation in singlestep mode or switch to normal mode",
af4ce882 278 .mhandler.cmd = do_singlestep,
d7f9b689
LC
279 },
280
2313086a
BS
281STEXI
282@item singlestep [off]
70fcbbe7 283@findex singlestep
2313086a
BS
284Run the emulation in single step mode.
285If called with option off, the emulation returns to normal mode.
286ETEXI
287
d7f9b689
LC
288 {
289 .name = "stop",
290 .args_type = "",
d7f9b689
LC
291 .params = "",
292 .help = "stop emulation",
5f158f21 293 .mhandler.cmd = hmp_stop,
d7f9b689
LC
294 },
295
2313086a
BS
296STEXI
297@item stop
70fcbbe7 298@findex stop
2313086a
BS
299Stop emulation.
300ETEXI
301
d7f9b689
LC
302 {
303 .name = "c|cont",
304 .args_type = "",
d7f9b689
LC
305 .params = "",
306 .help = "resume emulation",
a1f896a0 307 .user_print = monitor_user_noop,
261394db 308 .mhandler.cmd_new = do_cont,
d7f9b689
LC
309 },
310
2313086a
BS
311STEXI
312@item c or cont
70fcbbe7 313@findex cont
2313086a
BS
314Resume emulation.
315ETEXI
316
d7f9b689
LC
317 {
318 .name = "gdbserver",
319 .args_type = "device:s?",
d7f9b689
LC
320 .params = "[device]",
321 .help = "start gdbserver on given device (default 'tcp::1234'), stop with 'none'",
af4ce882 322 .mhandler.cmd = do_gdbserver,
d7f9b689
LC
323 },
324
2313086a
BS
325STEXI
326@item gdbserver [@var{port}]
70fcbbe7 327@findex gdbserver
2313086a
BS
328Start gdbserver session (default @var{port}=1234)
329ETEXI
330
d7f9b689
LC
331 {
332 .name = "x",
333 .args_type = "fmt:/,addr:l",
d7f9b689
LC
334 .params = "/fmt addr",
335 .help = "virtual memory dump starting at 'addr'",
af4ce882 336 .mhandler.cmd = do_memory_dump,
d7f9b689
LC
337 },
338
2313086a
BS
339STEXI
340@item x/fmt @var{addr}
70fcbbe7 341@findex x
2313086a
BS
342Virtual memory dump starting at @var{addr}.
343ETEXI
344
d7f9b689
LC
345 {
346 .name = "xp",
347 .args_type = "fmt:/,addr:l",
d7f9b689
LC
348 .params = "/fmt addr",
349 .help = "physical memory dump starting at 'addr'",
af4ce882 350 .mhandler.cmd = do_physical_memory_dump,
d7f9b689
LC
351 },
352
2313086a
BS
353STEXI
354@item xp /@var{fmt} @var{addr}
70fcbbe7 355@findex xp
2313086a
BS
356Physical memory dump starting at @var{addr}.
357
358@var{fmt} is a format which tells the command how to format the
359data. Its syntax is: @option{/@{count@}@{format@}@{size@}}
360
361@table @var
362@item count
363is the number of items to be dumped.
364
365@item format
366can be x (hex), d (signed decimal), u (unsigned decimal), o (octal),
367c (char) or i (asm instruction).
368
369@item size
370can be b (8 bits), h (16 bits), w (32 bits) or g (64 bits). On x86,
371@code{h} or @code{w} can be specified with the @code{i} format to
372respectively select 16 or 32 bit code instruction size.
373
374@end table
375
376Examples:
377@itemize
378@item
379Dump 10 instructions at the current instruction pointer:
380@example
381(qemu) x/10i $eip
3820x90107063: ret
3830x90107064: sti
3840x90107065: lea 0x0(%esi,1),%esi
3850x90107069: lea 0x0(%edi,1),%edi
3860x90107070: ret
3870x90107071: jmp 0x90107080
3880x90107073: nop
3890x90107074: nop
3900x90107075: nop
3910x90107076: nop
392@end example
393
394@item
395Dump 80 16 bit values at the start of the video memory.
396@smallexample
397(qemu) xp/80hx 0xb8000
3980x000b8000: 0x0b50 0x0b6c 0x0b65 0x0b78 0x0b38 0x0b36 0x0b2f 0x0b42
3990x000b8010: 0x0b6f 0x0b63 0x0b68 0x0b73 0x0b20 0x0b56 0x0b47 0x0b41
4000x000b8020: 0x0b42 0x0b69 0x0b6f 0x0b73 0x0b20 0x0b63 0x0b75 0x0b72
4010x000b8030: 0x0b72 0x0b65 0x0b6e 0x0b74 0x0b2d 0x0b63 0x0b76 0x0b73
4020x000b8040: 0x0b20 0x0b30 0x0b35 0x0b20 0x0b4e 0x0b6f 0x0b76 0x0b20
4030x000b8050: 0x0b32 0x0b30 0x0b30 0x0b33 0x0720 0x0720 0x0720 0x0720
4040x000b8060: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4050x000b8070: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4060x000b8080: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4070x000b8090: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
408@end smallexample
409@end itemize
410ETEXI
411
d7f9b689
LC
412 {
413 .name = "p|print",
414 .args_type = "fmt:/,val:l",
d7f9b689
LC
415 .params = "/fmt expr",
416 .help = "print expression value (use $reg for CPU register access)",
af4ce882 417 .mhandler.cmd = do_print,
d7f9b689
LC
418 },
419
2313086a
BS
420STEXI
421@item p or print/@var{fmt} @var{expr}
70fcbbe7 422@findex print
2313086a
BS
423
424Print expression value. Only the @var{format} part of @var{fmt} is
425used.
426ETEXI
427
d7f9b689
LC
428 {
429 .name = "i",
430 .args_type = "fmt:/,addr:i,index:i.",
d7f9b689
LC
431 .params = "/fmt addr",
432 .help = "I/O port read",
af4ce882 433 .mhandler.cmd = do_ioport_read,
d7f9b689
LC
434 },
435
2313086a
BS
436STEXI
437Read I/O port.
438ETEXI
439
d7f9b689
LC
440 {
441 .name = "o",
442 .args_type = "fmt:/,addr:i,val:i",
d7f9b689
LC
443 .params = "/fmt addr value",
444 .help = "I/O port write",
af4ce882 445 .mhandler.cmd = do_ioport_write,
d7f9b689
LC
446 },
447
f114784f
JK
448STEXI
449Write to I/O port.
450ETEXI
2313086a 451
d7f9b689
LC
452 {
453 .name = "sendkey",
454 .args_type = "string:s,hold_time:i?",
d7f9b689
LC
455 .params = "keys [hold_ms]",
456 .help = "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)",
af4ce882 457 .mhandler.cmd = do_sendkey,
d7f9b689
LC
458 },
459
2313086a
BS
460STEXI
461@item sendkey @var{keys}
70fcbbe7 462@findex sendkey
2313086a
BS
463
464Send @var{keys} to the emulator. @var{keys} could be the name of the
465key or @code{#} followed by the raw value in either decimal or hexadecimal
466format. Use @code{-} to press several keys simultaneously. Example:
467@example
468sendkey ctrl-alt-f1
469@end example
470
471This command is useful to send keys that your graphical user interface
472intercepts at low level, such as @code{ctrl-alt-f1} in X Window.
473ETEXI
474
d7f9b689
LC
475 {
476 .name = "system_reset",
477 .args_type = "",
d7f9b689
LC
478 .params = "",
479 .help = "reset the system",
38d22653 480 .mhandler.cmd = hmp_system_reset,
d7f9b689
LC
481 },
482
2313086a
BS
483STEXI
484@item system_reset
70fcbbe7 485@findex system_reset
2313086a
BS
486
487Reset the system.
488ETEXI
489
d7f9b689
LC
490 {
491 .name = "system_powerdown",
492 .args_type = "",
d7f9b689
LC
493 .params = "",
494 .help = "send system power down event",
5bc465e4 495 .mhandler.cmd = hmp_system_powerdown,
d7f9b689
LC
496 },
497
2313086a
BS
498STEXI
499@item system_powerdown
70fcbbe7 500@findex system_powerdown
2313086a
BS
501
502Power down the system (if supported).
503ETEXI
504
d7f9b689
LC
505 {
506 .name = "sum",
507 .args_type = "start:i,size:i",
d7f9b689
LC
508 .params = "addr size",
509 .help = "compute the checksum of a memory region",
af4ce882 510 .mhandler.cmd = do_sum,
d7f9b689
LC
511 },
512
2313086a
BS
513STEXI
514@item sum @var{addr} @var{size}
70fcbbe7 515@findex sum
2313086a
BS
516
517Compute the checksum of a memory region.
518ETEXI
519
d7f9b689
LC
520 {
521 .name = "usb_add",
522 .args_type = "devname:s",
d7f9b689
LC
523 .params = "device",
524 .help = "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')",
af4ce882 525 .mhandler.cmd = do_usb_add,
d7f9b689
LC
526 },
527
2313086a
BS
528STEXI
529@item usb_add @var{devname}
70fcbbe7 530@findex usb_add
2313086a
BS
531
532Add the USB device @var{devname}. For details of available devices see
533@ref{usb_devices}
534ETEXI
535
d7f9b689
LC
536 {
537 .name = "usb_del",
538 .args_type = "devname:s",
d7f9b689
LC
539 .params = "device",
540 .help = "remove USB device 'bus.addr'",
af4ce882 541 .mhandler.cmd = do_usb_del,
d7f9b689
LC
542 },
543
2313086a
BS
544STEXI
545@item usb_del @var{devname}
70fcbbe7 546@findex usb_del
2313086a
BS
547
548Remove the USB device @var{devname} from the QEMU virtual USB
549hub. @var{devname} has the syntax @code{bus.addr}. Use the monitor
550command @code{info usb} to see the devices you can remove.
551ETEXI
552
d7f9b689
LC
553 {
554 .name = "device_add",
c7e4e8ce
MA
555 .args_type = "device:O",
556 .params = "driver[,prop=value][,...]",
d7f9b689 557 .help = "add device, like -device on the command line",
8bc27249
MA
558 .user_print = monitor_user_noop,
559 .mhandler.cmd_new = do_device_add,
d7f9b689
LC
560 },
561
3418bd25
GH
562STEXI
563@item device_add @var{config}
70fcbbe7 564@findex device_add
3418bd25
GH
565
566Add device.
567ETEXI
568
d7f9b689
LC
569 {
570 .name = "device_del",
571 .args_type = "id:s",
d7f9b689
LC
572 .params = "device",
573 .help = "remove device",
17a38eaa
MA
574 .user_print = monitor_user_noop,
575 .mhandler.cmd_new = do_device_del,
d7f9b689
LC
576 },
577
3418bd25
GH
578STEXI
579@item device_del @var{id}
70fcbbe7 580@findex device_del
3418bd25
GH
581
582Remove device @var{id}.
583ETEXI
584
d7f9b689
LC
585 {
586 .name = "cpu",
587 .args_type = "index:i",
d7f9b689
LC
588 .params = "index",
589 .help = "set the default CPU",
755f1968 590 .mhandler.cmd = hmp_cpu,
d7f9b689 591 },
3418bd25 592
2313086a 593STEXI
c427ea9c
MA
594@item cpu @var{index}
595@findex cpu
2313086a
BS
596Set the default CPU.
597ETEXI
598
d7f9b689
LC
599 {
600 .name = "mouse_move",
601 .args_type = "dx_str:s,dy_str:s,dz_str:s?",
d7f9b689
LC
602 .params = "dx dy [dz]",
603 .help = "send mouse move events",
af4ce882 604 .mhandler.cmd = do_mouse_move,
d7f9b689
LC
605 },
606
2313086a
BS
607STEXI
608@item mouse_move @var{dx} @var{dy} [@var{dz}]
70fcbbe7 609@findex mouse_move
2313086a
BS
610Move the active mouse to the specified coordinates @var{dx} @var{dy}
611with optional scroll axis @var{dz}.
612ETEXI
613
d7f9b689
LC
614 {
615 .name = "mouse_button",
616 .args_type = "button_state:i",
d7f9b689
LC
617 .params = "state",
618 .help = "change mouse button state (1=L, 2=M, 4=R)",
af4ce882 619 .mhandler.cmd = do_mouse_button,
d7f9b689
LC
620 },
621
2313086a
BS
622STEXI
623@item mouse_button @var{val}
70fcbbe7 624@findex mouse_button
2313086a
BS
625Change the active mouse button state @var{val} (1=L, 2=M, 4=R).
626ETEXI
627
d7f9b689
LC
628 {
629 .name = "mouse_set",
630 .args_type = "index:i",
d7f9b689
LC
631 .params = "index",
632 .help = "set which mouse device receives events",
af4ce882 633 .mhandler.cmd = do_mouse_set,
d7f9b689
LC
634 },
635
2313086a
BS
636STEXI
637@item mouse_set @var{index}
70fcbbe7 638@findex mouse_set
2313086a
BS
639Set which mouse device receives events at given @var{index}, index
640can be obtained with
641@example
642info mice
643@end example
644ETEXI
645
646#ifdef HAS_AUDIO
d7f9b689
LC
647 {
648 .name = "wavcapture",
649 .args_type = "path:F,freq:i?,bits:i?,nchannels:i?",
d7f9b689
LC
650 .params = "path [frequency [bits [channels]]]",
651 .help = "capture audio to a wave file (default frequency=44100 bits=16 channels=2)",
af4ce882 652 .mhandler.cmd = do_wav_capture,
d7f9b689 653 },
2313086a
BS
654#endif
655STEXI
656@item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]
70fcbbe7 657@findex wavcapture
2313086a
BS
658Capture audio into @var{filename}. Using sample rate @var{frequency}
659bits per sample @var{bits} and number of channels @var{channels}.
660
661Defaults:
662@itemize @minus
663@item Sample rate = 44100 Hz - CD quality
664@item Bits = 16
665@item Number of channels = 2 - Stereo
666@end itemize
667ETEXI
668
669#ifdef HAS_AUDIO
d7f9b689
LC
670 {
671 .name = "stopcapture",
672 .args_type = "n:i",
d7f9b689
LC
673 .params = "capture index",
674 .help = "stop capture",
af4ce882 675 .mhandler.cmd = do_stop_capture,
d7f9b689 676 },
2313086a
BS
677#endif
678STEXI
679@item stopcapture @var{index}
70fcbbe7 680@findex stopcapture
2313086a
BS
681Stop capture with a given @var{index}, index can be obtained with
682@example
683info capture
684@end example
685ETEXI
686
d7f9b689
LC
687 {
688 .name = "memsave",
689 .args_type = "val:l,size:i,filename:s",
d7f9b689
LC
690 .params = "addr size file",
691 .help = "save to disk virtual memory dump starting at 'addr' of size 'size'",
0cfd6a9a 692 .mhandler.cmd = hmp_memsave,
d7f9b689
LC
693 },
694
2313086a
BS
695STEXI
696@item memsave @var{addr} @var{size} @var{file}
70fcbbe7 697@findex memsave
2313086a
BS
698save to disk virtual memory dump starting at @var{addr} of size @var{size}.
699ETEXI
700
d7f9b689
LC
701 {
702 .name = "pmemsave",
703 .args_type = "val:l,size:i,filename:s",
d7f9b689
LC
704 .params = "addr size file",
705 .help = "save to disk physical memory dump starting at 'addr' of size 'size'",
6d3962bf 706 .mhandler.cmd = hmp_pmemsave,
d7f9b689
LC
707 },
708
2313086a
BS
709STEXI
710@item pmemsave @var{addr} @var{size} @var{file}
70fcbbe7 711@findex pmemsave
2313086a
BS
712save to disk physical memory dump starting at @var{addr} of size @var{size}.
713ETEXI
714
d7f9b689
LC
715 {
716 .name = "boot_set",
717 .args_type = "bootdevice:s",
d7f9b689
LC
718 .params = "bootdevice",
719 .help = "define new values for the boot device list",
af4ce882 720 .mhandler.cmd = do_boot_set,
d7f9b689
LC
721 },
722
2313086a
BS
723STEXI
724@item boot_set @var{bootdevicelist}
70fcbbe7 725@findex boot_set
2313086a
BS
726
727Define new values for the boot device list. Those values will override
728the values specified on the command line through the @code{-boot} option.
729
730The values that can be specified here depend on the machine type, but are
731the same that can be specified in the @code{-boot} command line option.
732ETEXI
733
734#if defined(TARGET_I386)
d7f9b689
LC
735 {
736 .name = "nmi",
e9b4b432
LC
737 .args_type = "",
738 .params = "",
739 .help = "inject an NMI on all guest's CPUs",
740 .user_print = monitor_user_noop,
741 .mhandler.cmd_new = do_inject_nmi,
d7f9b689 742 },
2313086a
BS
743#endif
744STEXI
745@item nmi @var{cpu}
70fcbbe7 746@findex nmi
2313086a
BS
747Inject an NMI on the given CPU (x86 only).
748ETEXI
749
d7f9b689
LC
750 {
751 .name = "migrate",
fbc3d96c
LS
752 .args_type = "detach:-d,blk:-b,inc:-i,uri:s",
753 .params = "[-d] [-b] [-i] uri",
754 .help = "migrate to URI (using -d to not wait for completion)"
755 "\n\t\t\t -b for migration without shared storage with"
756 " full copy of disk\n\t\t\t -i for migration without "
757 "shared storage with incremental copy of disk "
758 "(base image shared between src and destination)",
759 .user_print = monitor_user_noop,
261394db 760 .mhandler.cmd_new = do_migrate,
d7f9b689
LC
761 },
762
fbc3d96c 763
2313086a 764STEXI
fbc3d96c 765@item migrate [-d] [-b] [-i] @var{uri}
70fcbbe7 766@findex migrate
2313086a 767Migrate to @var{uri} (using -d to not wait for completion).
fbc3d96c
LS
768 -b for migration with full copy of disk
769 -i for migration with incremental copy of disk (base image is shared)
2313086a
BS
770ETEXI
771
d7f9b689
LC
772 {
773 .name = "migrate_cancel",
774 .args_type = "",
d7f9b689
LC
775 .params = "",
776 .help = "cancel the current VM migration",
911d2963 777 .user_print = monitor_user_noop,
261394db 778 .mhandler.cmd_new = do_migrate_cancel,
d7f9b689
LC
779 },
780
2313086a
BS
781STEXI
782@item migrate_cancel
70fcbbe7 783@findex migrate_cancel
2313086a
BS
784Cancel the current VM migration.
785ETEXI
786
d7f9b689
LC
787 {
788 .name = "migrate_set_speed",
ed3d4a80 789 .args_type = "value:o",
d7f9b689 790 .params = "value",
ed3d4a80
JS
791 .help = "set maximum speed (in bytes) for migrations. "
792 "Defaults to MB if no size suffix is specified, ie. B/K/M/G/T",
5fd9083c 793 .user_print = monitor_user_noop,
261394db 794 .mhandler.cmd_new = do_migrate_set_speed,
d7f9b689
LC
795 },
796
2313086a
BS
797STEXI
798@item migrate_set_speed @var{value}
70fcbbe7 799@findex migrate_set_speed
2313086a 800Set maximum speed to @var{value} (in bytes) for migrations.
2ea42952
GC
801ETEXI
802
d7f9b689
LC
803 {
804 .name = "migrate_set_downtime",
b0fbf7d3 805 .args_type = "value:T",
d7f9b689
LC
806 .params = "value",
807 .help = "set maximum tolerated downtime (in seconds) for migrations",
c6027f56 808 .user_print = monitor_user_noop,
261394db 809 .mhandler.cmd_new = do_migrate_set_downtime,
d7f9b689 810 },
2ea42952
GC
811
812STEXI
813@item migrate_set_downtime @var{second}
70fcbbe7 814@findex migrate_set_downtime
2ea42952 815Set maximum tolerated downtime (in seconds) for migration.
f8882568
JS
816ETEXI
817
818 {
2ea720db
JS
819 .name = "client_migrate_info",
820 .args_type = "protocol:s,hostname:s,port:i?,tls-port:i?,cert-subject:s?",
821 .params = "protocol hostname port tls-port cert-subject",
822 .help = "send migration info to spice/vnc client",
823 .user_print = monitor_user_noop,
edc5cb1a
YH
824 .mhandler.cmd_async = client_migrate_info,
825 .flags = MONITOR_CMD_ASYNC,
f8882568
JS
826 },
827
e866e239
GH
828STEXI
829@item client_migrate_info @var{protocol} @var{hostname} @var{port} @var{tls-port} @var{cert-subject}
830@findex client_migrate_info
831Set the spice/vnc connection info for the migration target. The spice/vnc
832server will ask the spice/vnc client to automatically reconnect using the
833new parameters (if specified) once the vm migration finished successfully.
834ETEXI
835
836 {
2ea720db 837 .name = "snapshot_blkdev",
d967b2f1 838 .args_type = "device:B,snapshot-file:s?,format:s?",
2ea720db
JS
839 .params = "device [new-image-file] [format]",
840 .help = "initiates a live snapshot\n\t\t\t"
841 "of device. If a new image file is specified, the\n\t\t\t"
842 "new image file will become the new root image.\n\t\t\t"
843 "If format is specified, the snapshot file will\n\t\t\t"
844 "be created in that format. Otherwise the\n\t\t\t"
845 "snapshot will be internal! (currently unsupported)",
846 .mhandler.cmd_new = do_snapshot_blkdev,
e866e239
GH
847 },
848
f8882568
JS
849STEXI
850@item snapshot_blkdev
851@findex snapshot_blkdev
852Snapshot device, using snapshot file as target if provided
2313086a
BS
853ETEXI
854
855#if defined(TARGET_I386)
d7f9b689
LC
856 {
857 .name = "drive_add",
858 .args_type = "pci_addr:s,opts:s",
d7f9b689
LC
859 .params = "[[<domain>:]<bus>:]<slot>\n"
860 "[file=file][,if=type][,bus=n]\n"
fb0490f6 861 "[,unit=m][,media=d][,index=i]\n"
d7f9b689 862 "[,cyls=c,heads=h,secs=s[,trans=t]]\n"
fb0490f6
SH
863 "[,snapshot=on|off][,cache=on|off]\n"
864 "[,readonly=on|off][,copy-on-read=on|off]",
d7f9b689 865 .help = "add drive to PCI storage controller",
af4ce882 866 .mhandler.cmd = drive_hot_add,
d7f9b689 867 },
2313086a 868#endif
d7f9b689 869
2313086a
BS
870STEXI
871@item drive_add
70fcbbe7 872@findex drive_add
2313086a
BS
873Add drive to PCI storage controller.
874ETEXI
875
876#if defined(TARGET_I386)
d7f9b689
LC
877 {
878 .name = "pci_add",
879 .args_type = "pci_addr:s,type:s,opts:s?",
d7f9b689
LC
880 .params = "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...",
881 .help = "hot-add PCI device",
6c6a58ae 882 .mhandler.cmd = pci_device_hot_add,
d7f9b689 883 },
2313086a 884#endif
d7f9b689 885
2313086a
BS
886STEXI
887@item pci_add
70fcbbe7 888@findex pci_add
2313086a
BS
889Hot-add PCI device.
890ETEXI
891
892#if defined(TARGET_I386)
d7f9b689
LC
893 {
894 .name = "pci_del",
895 .args_type = "pci_addr:s",
d7f9b689
LC
896 .params = "[[<domain>:]<bus>:]<slot>",
897 .help = "hot remove PCI device",
b752daf0 898 .mhandler.cmd = do_pci_device_hot_remove,
d7f9b689 899 },
2313086a 900#endif
d7f9b689 901
2313086a
BS
902STEXI
903@item pci_del
70fcbbe7 904@findex pci_del
2313086a 905Hot remove PCI device.
2ae63bda
IY
906ETEXI
907
908 {
909 .name = "pcie_aer_inject_error",
910 .args_type = "advisory_non_fatal:-a,correctable:-c,"
911 "id:s,error_status:s,"
912 "header0:i?,header1:i?,header2:i?,header3:i?,"
913 "prefix0:i?,prefix1:i?,prefix2:i?,prefix3:i?",
914 .params = "[-a] [-c] id "
915 "<error_status> [<tlp header> [<tlp header prefix>]]",
916 .help = "inject pcie aer error\n\t\t\t"
917 " -a for advisory non fatal error\n\t\t\t"
918 " -c for correctable error\n\t\t\t"
919 "<id> = qdev device id\n\t\t\t"
920 "<error_status> = error string or 32bit\n\t\t\t"
921 "<tlb header> = 32bit x 4\n\t\t\t"
922 "<tlb header prefix> = 32bit x 4",
923 .user_print = pcie_aer_inject_error_print,
924 .mhandler.cmd_new = do_pcie_aer_inejct_error,
925 },
926
927STEXI
928@item pcie_aer_inject_error
929@findex pcie_aer_inject_error
930Inject PCIe AER error
2313086a
BS
931ETEXI
932
d7f9b689
LC
933 {
934 .name = "host_net_add",
935 .args_type = "device:s,opts:s?",
d7f9b689
LC
936 .params = "tap|user|socket|vde|dump [options]",
937 .help = "add host VLAN client",
af4ce882 938 .mhandler.cmd = net_host_device_add,
d7f9b689
LC
939 },
940
2313086a
BS
941STEXI
942@item host_net_add
70fcbbe7 943@findex host_net_add
2313086a
BS
944Add host VLAN client.
945ETEXI
946
d7f9b689
LC
947 {
948 .name = "host_net_remove",
949 .args_type = "vlan_id:i,device:s",
d7f9b689
LC
950 .params = "vlan_id name",
951 .help = "remove host VLAN client",
af4ce882 952 .mhandler.cmd = net_host_device_remove,
d7f9b689
LC
953 },
954
2313086a
BS
955STEXI
956@item host_net_remove
70fcbbe7 957@findex host_net_remove
2313086a 958Remove host VLAN client.
ae82d324
MA
959ETEXI
960
961 {
962 .name = "netdev_add",
963 .args_type = "netdev:O",
964 .params = "[user|tap|socket],id=str[,prop=value][,...]",
965 .help = "add host network device",
966 .user_print = monitor_user_noop,
967 .mhandler.cmd_new = do_netdev_add,
968 },
969
970STEXI
971@item netdev_add
972@findex netdev_add
973Add host network device.
974ETEXI
975
976 {
977 .name = "netdev_del",
978 .args_type = "id:s",
979 .params = "id",
980 .help = "remove host network device",
981 .user_print = monitor_user_noop,
982 .mhandler.cmd_new = do_netdev_del,
983 },
984
985STEXI
986@item netdev_del
987@findex netdev_del
988Remove host network device.
2313086a
BS
989ETEXI
990
991#ifdef CONFIG_SLIRP
d7f9b689
LC
992 {
993 .name = "hostfwd_add",
994 .args_type = "arg1:s,arg2:s?,arg3:s?",
d7f9b689
LC
995 .params = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
996 .help = "redirect TCP or UDP connections from host to guest (requires -net user)",
af4ce882 997 .mhandler.cmd = net_slirp_hostfwd_add,
d7f9b689 998 },
21413d68
MA
999#endif
1000STEXI
1001@item hostfwd_add
1002@findex hostfwd_add
1003Redirect TCP or UDP connections from host to guest (requires -net user).
1004ETEXI
d7f9b689 1005
21413d68 1006#ifdef CONFIG_SLIRP
d7f9b689
LC
1007 {
1008 .name = "hostfwd_remove",
1009 .args_type = "arg1:s,arg2:s?,arg3:s?",
d7f9b689
LC
1010 .params = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",
1011 .help = "remove host-to-guest TCP or UDP redirection",
af4ce882 1012 .mhandler.cmd = net_slirp_hostfwd_remove,
d7f9b689
LC
1013 },
1014
2313086a
BS
1015#endif
1016STEXI
21413d68
MA
1017@item hostfwd_remove
1018@findex hostfwd_remove
1019Remove host-to-guest TCP or UDP redirection.
2313086a
BS
1020ETEXI
1021
d7f9b689
LC
1022 {
1023 .name = "balloon",
3b0bd6ec 1024 .args_type = "value:M",
d7f9b689 1025 .params = "target",
3c05613a 1026 .help = "request VM to change its memory allocation (in MB)",
83fb1de2 1027 .user_print = monitor_user_noop,
625a5bef 1028 .mhandler.cmd_async = do_balloon,
8ac470c1 1029 .flags = MONITOR_CMD_ASYNC,
d7f9b689
LC
1030 },
1031
2313086a
BS
1032STEXI
1033@item balloon @var{value}
70fcbbe7 1034@findex balloon
2313086a
BS
1035Request VM to change its memory allocation to @var{value} (in MB).
1036ETEXI
1037
d7f9b689
LC
1038 {
1039 .name = "set_link",
c9b26a4c
MA
1040 .args_type = "name:s,up:b",
1041 .params = "name on|off",
d7f9b689 1042 .help = "change the link status of a network adapter",
5369e3c0
MA
1043 .user_print = monitor_user_noop,
1044 .mhandler.cmd_new = do_set_link,
d7f9b689
LC
1045 },
1046
2313086a 1047STEXI
c9b26a4c 1048@item set_link @var{name} [on|off]
70fcbbe7 1049@findex set_link
c9b26a4c 1050Switch link @var{name} on (i.e. up) or off (i.e. down).
2313086a
BS
1051ETEXI
1052
d7f9b689
LC
1053 {
1054 .name = "watchdog_action",
1055 .args_type = "action:s",
d7f9b689
LC
1056 .params = "[reset|shutdown|poweroff|pause|debug|none]",
1057 .help = "change watchdog action",
af4ce882 1058 .mhandler.cmd = do_watchdog_action,
d7f9b689
LC
1059 },
1060
2313086a
BS
1061STEXI
1062@item watchdog_action
70fcbbe7 1063@findex watchdog_action
2313086a
BS
1064Change watchdog action.
1065ETEXI
1066
d7f9b689
LC
1067 {
1068 .name = "acl_show",
1069 .args_type = "aclname:s",
d7f9b689
LC
1070 .params = "aclname",
1071 .help = "list rules in the access control list",
af4ce882 1072 .mhandler.cmd = do_acl_show,
d7f9b689
LC
1073 },
1074
2313086a 1075STEXI
15dfcd45 1076@item acl_show @var{aclname}
70fcbbe7 1077@findex acl_show
15dfcd45
JK
1078List all the matching rules in the access control list, and the default
1079policy. There are currently two named access control lists,
1080@var{vnc.x509dname} and @var{vnc.username} matching on the x509 client
1081certificate distinguished name, and SASL username respectively.
1082ETEXI
2313086a 1083
d7f9b689
LC
1084 {
1085 .name = "acl_policy",
1086 .args_type = "aclname:s,policy:s",
d7f9b689
LC
1087 .params = "aclname allow|deny",
1088 .help = "set default access control list policy",
af4ce882 1089 .mhandler.cmd = do_acl_policy,
d7f9b689
LC
1090 },
1091
15dfcd45 1092STEXI
cbbfacc6 1093@item acl_policy @var{aclname} @code{allow|deny}
70fcbbe7 1094@findex acl_policy
15dfcd45 1095Set the default access control list policy, used in the event that
2313086a 1096none of the explicit rules match. The default policy at startup is
15dfcd45
JK
1097always @code{deny}.
1098ETEXI
1099
d7f9b689
LC
1100 {
1101 .name = "acl_add",
1102 .args_type = "aclname:s,match:s,policy:s,index:i?",
d7f9b689
LC
1103 .params = "aclname match allow|deny [index]",
1104 .help = "add a match rule to the access control list",
af4ce882 1105 .mhandler.cmd = do_acl_add,
d7f9b689
LC
1106 },
1107
15dfcd45 1108STEXI
0e4aec98
MA
1109@item acl_add @var{aclname} @var{match} @code{allow|deny} [@var{index}]
1110@findex acl_add
15dfcd45
JK
1111Add a match rule to the access control list, allowing or denying access.
1112The match will normally be an exact username or x509 distinguished name,
1113but can optionally include wildcard globs. eg @code{*@@EXAMPLE.COM} to
1114allow all users in the @code{EXAMPLE.COM} kerberos realm. The match will
2313086a 1115normally be appended to the end of the ACL, but can be inserted
15dfcd45
JK
1116earlier in the list if the optional @var{index} parameter is supplied.
1117ETEXI
1118
d7f9b689
LC
1119 {
1120 .name = "acl_remove",
1121 .args_type = "aclname:s,match:s",
d7f9b689
LC
1122 .params = "aclname match",
1123 .help = "remove a match rule from the access control list",
af4ce882 1124 .mhandler.cmd = do_acl_remove,
d7f9b689
LC
1125 },
1126
15dfcd45
JK
1127STEXI
1128@item acl_remove @var{aclname} @var{match}
70fcbbe7 1129@findex acl_remove
15dfcd45
JK
1130Remove the specified match rule from the access control list.
1131ETEXI
1132
d7f9b689
LC
1133 {
1134 .name = "acl_reset",
1135 .args_type = "aclname:s",
d7f9b689
LC
1136 .params = "aclname",
1137 .help = "reset the access control list",
af4ce882 1138 .mhandler.cmd = do_acl_reset,
d7f9b689
LC
1139 },
1140
15dfcd45 1141STEXI
0e4aec98
MA
1142@item acl_reset @var{aclname}
1143@findex acl_reset
15dfcd45 1144Remove all matches from the access control list, and set the default
2313086a 1145policy back to @code{deny}.
2313086a
BS
1146ETEXI
1147
79c4f6b0 1148#if defined(TARGET_I386)
d7f9b689
LC
1149
1150 {
1151 .name = "mce",
31ce5e0c
JD
1152 .args_type = "broadcast:-b,cpu_index:i,bank:i,status:l,mcg_status:l,addr:l,misc:l",
1153 .params = "[-b] cpu bank status mcgstatus addr misc",
1154 .help = "inject a MCE on the given CPU [and broadcast to other CPUs with -b option]",
af4ce882 1155 .mhandler.cmd = do_inject_mce,
d7f9b689
LC
1156 },
1157
79c4f6b0
HY
1158#endif
1159STEXI
1160@item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}
70fcbbe7 1161@findex mce (x86)
79c4f6b0 1162Inject an MCE on the given CPU (x86 only).
f07918fd
MM
1163ETEXI
1164
d7f9b689
LC
1165 {
1166 .name = "getfd",
1167 .args_type = "fdname:s",
d7f9b689
LC
1168 .params = "getfd name",
1169 .help = "receive a file descriptor via SCM rights and assign it a name",
f0d6000a 1170 .user_print = monitor_user_noop,
261394db 1171 .mhandler.cmd_new = do_getfd,
d7f9b689
LC
1172 },
1173
f07918fd
MM
1174STEXI
1175@item getfd @var{fdname}
70fcbbe7 1176@findex getfd
f07918fd
MM
1177If a file descriptor is passed alongside this command using the SCM_RIGHTS
1178mechanism on unix sockets, it is stored using the name @var{fdname} for
1179later use by other monitor commands.
1180ETEXI
1181
d7f9b689
LC
1182 {
1183 .name = "closefd",
1184 .args_type = "fdname:s",
d7f9b689
LC
1185 .params = "closefd name",
1186 .help = "close a file descriptor previously passed via SCM rights",
18f3a515 1187 .user_print = monitor_user_noop,
261394db 1188 .mhandler.cmd_new = do_closefd,
d7f9b689
LC
1189 },
1190
f07918fd
MM
1191STEXI
1192@item closefd @var{fdname}
70fcbbe7 1193@findex closefd
f07918fd
MM
1194Close the file descriptor previously assigned to @var{fdname} using the
1195@code{getfd} command. This is only needed if the file descriptor was never
1196used by another monitor command.
a3a55a2e
LC
1197ETEXI
1198
1199 {
1200 .name = "block_passwd",
1201 .args_type = "device:B,password:s",
1202 .params = "block_passwd device password",
1203 .help = "set the password of encrypted block devices",
1204 .user_print = monitor_user_noop,
261394db 1205 .mhandler.cmd_new = do_block_set_passwd,
a3a55a2e
LC
1206 },
1207
727f005e
ZYW
1208STEXI
1209@item block_set_io_throttle @var{device} @var{bps} @var{bps_rd} @var{bps_wr} @var{iops} @var{iops_rd} @var{iops_wr}
1210@findex block_set_io_throttle
1211Change I/O throttle limits for a block drive to @var{bps} @var{bps_rd} @var{bps_wr} @var{iops} @var{iops_rd} @var{iops_wr}
1212ETEXI
1213
1214 {
1215 .name = "block_set_io_throttle",
1216 .args_type = "device:B,bps:l,bps_rd:l,bps_wr:l,iops:l,iops_rd:l,iops_wr:l",
1217 .params = "device bps bps_rd bps_wr iops iops_rd iops_wr",
1218 .help = "change I/O throttle limits for a block drive",
1219 .user_print = monitor_user_noop,
1220 .mhandler.cmd_new = do_block_set_io_throttle,
1221 },
1222
a3a55a2e
LC
1223STEXI
1224@item block_passwd @var{device} @var{password}
70fcbbe7 1225@findex block_passwd
a3a55a2e 1226Set the encrypted device @var{device} password to @var{password}
7572150c
GH
1227ETEXI
1228
1229 {
1230 .name = "set_password",
1231 .args_type = "protocol:s,password:s,connected:s?",
1232 .params = "protocol password action-if-connected",
1233 .help = "set spice/vnc password",
1234 .user_print = monitor_user_noop,
1235 .mhandler.cmd_new = set_password,
1236 },
1237
1238STEXI
1239@item set_password [ vnc | spice ] password [ action-if-connected ]
1240@findex set_password
1241
1242Change spice/vnc password. Use zero to make the password stay valid
1243forever. @var{action-if-connected} specifies what should happen in
1244case a connection is established: @var{fail} makes the password change
1245fail. @var{disconnect} changes the password and disconnects the
1246client. @var{keep} changes the password and keeps the connection up.
1247@var{keep} is the default.
1248ETEXI
1249
1250 {
1251 .name = "expire_password",
1252 .args_type = "protocol:s,time:s",
1253 .params = "protocol time",
1254 .help = "set spice/vnc password expire-time",
1255 .user_print = monitor_user_noop,
1256 .mhandler.cmd_new = expire_password,
1257 },
1258
1259STEXI
1260@item expire_password [ vnc | spice ] expire-time
1261@findex expire_password
1262
1263Specify when a password for spice/vnc becomes
1264invalid. @var{expire-time} accepts:
1265
1266@table @var
1267@item now
1268Invalidate password instantly.
1269
1270@item never
1271Password stays valid forever.
1272
1273@item +nsec
1274Password stays valid for @var{nsec} seconds starting now.
1275
1276@item nsec
1277Password is invalidated at the given time. @var{nsec} are the seconds
1278passed since 1970, i.e. unix epoch.
1279
1280@end table
4a7e1190 1281ETEXI
b40292e7 1282
33572ece
JK
1283 {
1284 .name = "info",
1285 .args_type = "item:s?",
1286 .params = "[subcommand]",
1287 .help = "show various information about the system state",
1162daa6 1288 .mhandler.cmd = do_info,
33572ece
JK
1289 },
1290
1291STEXI
1292@item info @var{subcommand}
1293@findex info
1294Show various information about the system state.
1295
1296@table @option
1297@item info version
1298show the version of QEMU
33572ece
JK
1299@item info network
1300show the various VLANs and the associated devices
1301@item info chardev
1302show the character devices
1303@item info block
1304show the block devices
1305@item info blockstats
1306show block device statistics
1307@item info registers
1308show the cpu registers
1309@item info cpus
1310show infos for each CPU
1311@item info history
1312show the command line history
1313@item info irq
1314show the interrupts statistics (if available)
1315@item info pic
1316show i8259 (PIC) state
1317@item info pci
1318show emulated PCI device info
1319@item info tlb
bebabbc7 1320show virtual to physical memory mappings (i386, SH4, SPARC, and PPC only)
33572ece
JK
1321@item info mem
1322show the active virtual memory mappings (i386 only)
33572ece
JK
1323@item info jit
1324show dynamic compiler info
33572ece
JK
1325@item info numa
1326show NUMA information
b40292e7
JK
1327@item info kvm
1328show KVM information
33572ece
JK
1329@item info usb
1330show USB devices plugged on the virtual USB hub
1331@item info usbhost
1332show all USB host devices
1333@item info profile
1334show profiling information
1335@item info capture
1336show information about active capturing
1337@item info snapshots
1338show list of VM snapshots
1339@item info status
1340show the current VM status (running|paused)
1341@item info pcmcia
1342show guest PCMCIA status
1343@item info mice
1344show which guest mouse is receiving events
1345@item info vnc
1346show the vnc server status
1347@item info name
1348show the current VM name
1349@item info uuid
1350show the current VM UUID
1351@item info cpustats
1352show CPU statistics
1353@item info usernet
1354show user network stack connection states
1355@item info migrate
1356show migration status
1357@item info balloon
1358show balloon information
1359@item info qtree
1360show device tree
1361@item info qdm
1362show qdev device model list
1363@item info roms
1364show roms
1365@end table
1366ETEXI
1367
6d8a764e 1368#ifdef CONFIG_TRACE_SIMPLE
22890ab5
PS
1369STEXI
1370@item info trace
1371show contents of trace buffer
31965ae2
LV
1372ETEXI
1373#endif
1374
1375STEXI
22890ab5
PS
1376@item info trace-events
1377show available trace events and their state
1378ETEXI
22890ab5 1379
2313086a
BS
1380STEXI
1381@end table
1382ETEXI