xref: /qemu/hmp-commands.hx (revision c427ea9cd110818bb4f6906b6d36d9a4d93f6fd7)
12313086aSBlue SwirlHXCOMM Use DEFHEADING() to define headings in both help text and texi
22313086aSBlue SwirlHXCOMM Text between STEXI and ETEXI are copied to texi version and
32313086aSBlue SwirlHXCOMM discarded from C version
42313086aSBlue SwirlHXCOMM DEF(command, args, callback, arg_string, help) is used to construct
52313086aSBlue SwirlHXCOMM monitor commands
62313086aSBlue SwirlHXCOMM HXCOMM can be used for comments, discarded from both texi and C
72313086aSBlue Swirl
82313086aSBlue SwirlSTEXI
92313086aSBlue Swirl@table @option
102313086aSBlue SwirlETEXI
112313086aSBlue Swirl
12d7f9b689SLuiz Capitulino    {
13d7f9b689SLuiz Capitulino        .name       = "help|?",
14d7f9b689SLuiz Capitulino        .args_type  = "name:s?",
15d7f9b689SLuiz Capitulino        .params     = "[cmd]",
16d7f9b689SLuiz Capitulino        .help       = "show the help",
17af4ce882SLuiz Capitulino        .mhandler.cmd = do_help_cmd,
18d7f9b689SLuiz Capitulino    },
19d7f9b689SLuiz Capitulino
202313086aSBlue SwirlSTEXI
212313086aSBlue Swirl@item help or ? [@var{cmd}]
2270fcbbe7SStefan Weil@findex help
232313086aSBlue SwirlShow the help for all commands or just for command @var{cmd}.
242313086aSBlue SwirlETEXI
252313086aSBlue Swirl
26d7f9b689SLuiz Capitulino    {
27d7f9b689SLuiz Capitulino        .name       = "commit",
28d7f9b689SLuiz Capitulino        .args_type  = "device:B",
29d7f9b689SLuiz Capitulino        .params     = "device|all",
30d7f9b689SLuiz Capitulino        .help       = "commit changes to the disk images (if -snapshot is used) or backing files",
31af4ce882SLuiz Capitulino        .mhandler.cmd = do_commit,
32d7f9b689SLuiz Capitulino    },
33d7f9b689SLuiz Capitulino
342313086aSBlue SwirlSTEXI
352313086aSBlue Swirl@item commit
3670fcbbe7SStefan Weil@findex commit
372313086aSBlue SwirlCommit changes to the disk images (if -snapshot is used) or backing files.
382313086aSBlue SwirlETEXI
392313086aSBlue Swirl
40d7f9b689SLuiz Capitulino    {
41d7f9b689SLuiz Capitulino        .name       = "info",
42d7f9b689SLuiz Capitulino        .args_type  = "item:s?",
43d7f9b689SLuiz Capitulino        .params     = "[subcommand]",
44d7f9b689SLuiz Capitulino        .help       = "show various information about the system state",
4513c7425eSLuiz Capitulino        .user_print = monitor_user_noop,
46261394dbSLuiz Capitulino        .mhandler.cmd_new = do_info,
47d7f9b689SLuiz Capitulino    },
48d7f9b689SLuiz Capitulino
492313086aSBlue SwirlSTEXI
502313086aSBlue Swirl@item info @var{subcommand}
5170fcbbe7SStefan Weil@findex info
522313086aSBlue SwirlShow various information about the system state.
532313086aSBlue Swirl
542313086aSBlue Swirl@table @option
552313086aSBlue Swirl@item info version
562313086aSBlue Swirlshow the version of QEMU
572313086aSBlue Swirl@item info network
582313086aSBlue Swirlshow the various VLANs and the associated devices
592313086aSBlue Swirl@item info chardev
602313086aSBlue Swirlshow the character devices
612313086aSBlue Swirl@item info block
622313086aSBlue Swirlshow the block devices
632313086aSBlue Swirl@item info block
642313086aSBlue Swirlshow block device statistics
652313086aSBlue Swirl@item info registers
662313086aSBlue Swirlshow the cpu registers
672313086aSBlue Swirl@item info cpus
682313086aSBlue Swirlshow infos for each CPU
692313086aSBlue Swirl@item info history
702313086aSBlue Swirlshow the command line history
712313086aSBlue Swirl@item info irq
722313086aSBlue Swirlshow the interrupts statistics (if available)
732313086aSBlue Swirl@item info pic
742313086aSBlue Swirlshow i8259 (PIC) state
752313086aSBlue Swirl@item info pci
762313086aSBlue Swirlshow emulated PCI device info
772313086aSBlue Swirl@item info tlb
782313086aSBlue Swirlshow virtual to physical memory mappings (i386 only)
792313086aSBlue Swirl@item info mem
802313086aSBlue Swirlshow the active virtual memory mappings (i386 only)
812313086aSBlue Swirl@item info hpet
822313086aSBlue Swirlshow state of HPET (i386 only)
832313086aSBlue Swirl@item info kvm
842313086aSBlue Swirlshow KVM information
852313086aSBlue Swirl@item info usb
862313086aSBlue Swirlshow USB devices plugged on the virtual USB hub
872313086aSBlue Swirl@item info usbhost
882313086aSBlue Swirlshow all USB host devices
892313086aSBlue Swirl@item info profile
902313086aSBlue Swirlshow profiling information
912313086aSBlue Swirl@item info capture
922313086aSBlue Swirlshow information about active capturing
932313086aSBlue Swirl@item info snapshots
942313086aSBlue Swirlshow list of VM snapshots
952313086aSBlue Swirl@item info status
962313086aSBlue Swirlshow the current VM status (running|paused)
972313086aSBlue Swirl@item info pcmcia
982313086aSBlue Swirlshow guest PCMCIA status
992313086aSBlue Swirl@item info mice
1002313086aSBlue Swirlshow which guest mouse is receiving events
1012313086aSBlue Swirl@item info vnc
1022313086aSBlue Swirlshow the vnc server status
1032313086aSBlue Swirl@item info name
1042313086aSBlue Swirlshow the current VM name
1052313086aSBlue Swirl@item info uuid
1062313086aSBlue Swirlshow the current VM UUID
1072313086aSBlue Swirl@item info cpustats
1082313086aSBlue Swirlshow CPU statistics
1096dbe553fSJan Kiszka@item info usernet
1106dbe553fSJan Kiszkashow user network stack connection states
1112313086aSBlue Swirl@item info migrate
1122313086aSBlue Swirlshow migration status
1132313086aSBlue Swirl@item info balloon
1142313086aSBlue Swirlshow balloon information
1152313086aSBlue Swirl@item info qtree
1162313086aSBlue Swirlshow device tree
1172313086aSBlue Swirl@end table
1182313086aSBlue SwirlETEXI
1192313086aSBlue Swirl
120d7f9b689SLuiz Capitulino    {
121d7f9b689SLuiz Capitulino        .name       = "q|quit",
122d7f9b689SLuiz Capitulino        .args_type  = "",
123d7f9b689SLuiz Capitulino        .params     = "",
124d7f9b689SLuiz Capitulino        .help       = "quit the emulator",
125b223f35fSLuiz Capitulino        .user_print = monitor_user_noop,
126261394dbSLuiz Capitulino        .mhandler.cmd_new = do_quit,
127d7f9b689SLuiz Capitulino    },
128d7f9b689SLuiz Capitulino
1292313086aSBlue SwirlSTEXI
1302313086aSBlue Swirl@item q or quit
13170fcbbe7SStefan Weil@findex quit
1322313086aSBlue SwirlQuit the emulator.
1332313086aSBlue SwirlETEXI
1342313086aSBlue Swirl
135d7f9b689SLuiz Capitulino    {
136d7f9b689SLuiz Capitulino        .name       = "eject",
13778d714e0SLuiz Capitulino        .args_type  = "force:-f,device:B",
138d7f9b689SLuiz Capitulino        .params     = "[-f] device",
139d7f9b689SLuiz Capitulino        .help       = "eject a removable medium (use -f to force it)",
140e1c923a6SLuiz Capitulino        .user_print = monitor_user_noop,
141261394dbSLuiz Capitulino        .mhandler.cmd_new = do_eject,
142d7f9b689SLuiz Capitulino    },
143d7f9b689SLuiz Capitulino
1442313086aSBlue SwirlSTEXI
1452313086aSBlue Swirl@item eject [-f] @var{device}
14670fcbbe7SStefan Weil@findex eject
1472313086aSBlue SwirlEject a removable medium (use -f to force it).
1482313086aSBlue SwirlETEXI
1492313086aSBlue Swirl
150d7f9b689SLuiz Capitulino    {
151d7f9b689SLuiz Capitulino        .name       = "change",
152d7f9b689SLuiz Capitulino        .args_type  = "device:B,target:F,arg:s?",
153d7f9b689SLuiz Capitulino        .params     = "device filename [format]",
154d7f9b689SLuiz Capitulino        .help       = "change a removable medium, optional format",
155ec3b82afSMarkus Armbruster        .user_print = monitor_user_noop,
156261394dbSLuiz Capitulino        .mhandler.cmd_new = do_change,
157d7f9b689SLuiz Capitulino    },
158d7f9b689SLuiz Capitulino
1592313086aSBlue SwirlSTEXI
1602313086aSBlue Swirl@item change @var{device} @var{setting}
16170fcbbe7SStefan Weil@findex change
1622313086aSBlue Swirl
1632313086aSBlue SwirlChange the configuration of a device.
1642313086aSBlue Swirl
1652313086aSBlue Swirl@table @option
1662313086aSBlue Swirl@item change @var{diskdevice} @var{filename} [@var{format}]
1672313086aSBlue SwirlChange the medium for a removable disk device to point to @var{filename}. eg
1682313086aSBlue Swirl
1692313086aSBlue Swirl@example
1702313086aSBlue Swirl(qemu) change ide1-cd0 /path/to/some.iso
1712313086aSBlue Swirl@end example
1722313086aSBlue Swirl
1732313086aSBlue Swirl@var{format} is optional.
1742313086aSBlue Swirl
1752313086aSBlue Swirl@item change vnc @var{display},@var{options}
1762313086aSBlue SwirlChange the configuration of the VNC server. The valid syntax for @var{display}
1772313086aSBlue Swirland @var{options} are described at @ref{sec_invocation}. eg
1782313086aSBlue Swirl
1792313086aSBlue Swirl@example
1802313086aSBlue Swirl(qemu) change vnc localhost:1
1812313086aSBlue Swirl@end example
1822313086aSBlue Swirl
1832313086aSBlue Swirl@item change vnc password [@var{password}]
1842313086aSBlue Swirl
1852313086aSBlue SwirlChange the password associated with the VNC server. If the new password is not
1862313086aSBlue Swirlsupplied, the monitor will prompt for it to be entered. VNC passwords are only
1872313086aSBlue Swirlsignificant up to 8 letters. eg
1882313086aSBlue Swirl
1892313086aSBlue Swirl@example
1902313086aSBlue Swirl(qemu) change vnc password
1912313086aSBlue SwirlPassword: ********
1922313086aSBlue Swirl@end example
1932313086aSBlue Swirl
1942313086aSBlue Swirl@end table
1952313086aSBlue SwirlETEXI
1962313086aSBlue Swirl
197d7f9b689SLuiz Capitulino    {
198d7f9b689SLuiz Capitulino        .name       = "screendump",
199d7f9b689SLuiz Capitulino        .args_type  = "filename:F",
200d7f9b689SLuiz Capitulino        .params     = "filename",
201d7f9b689SLuiz Capitulino        .help       = "save screen into PPM image 'filename'",
202f1dc58e0SLuiz Capitulino        .user_print = monitor_user_noop,
203f1dc58e0SLuiz Capitulino        .mhandler.cmd_new = do_screen_dump,
204d7f9b689SLuiz Capitulino    },
205d7f9b689SLuiz Capitulino
2062313086aSBlue SwirlSTEXI
2072313086aSBlue Swirl@item screendump @var{filename}
20870fcbbe7SStefan Weil@findex screendump
2092313086aSBlue SwirlSave screen into PPM image @var{filename}.
2102313086aSBlue SwirlETEXI
2112313086aSBlue Swirl
212d7f9b689SLuiz Capitulino    {
213d7f9b689SLuiz Capitulino        .name       = "logfile",
214d7f9b689SLuiz Capitulino        .args_type  = "filename:F",
215d7f9b689SLuiz Capitulino        .params     = "filename",
216d7f9b689SLuiz Capitulino        .help       = "output logs to 'filename'",
217af4ce882SLuiz Capitulino        .mhandler.cmd = do_logfile,
218d7f9b689SLuiz Capitulino    },
219d7f9b689SLuiz Capitulino
2202313086aSBlue SwirlSTEXI
2212313086aSBlue Swirl@item logfile @var{filename}
22270fcbbe7SStefan Weil@findex logfile
2232313086aSBlue SwirlOutput logs to @var{filename}.
2242313086aSBlue SwirlETEXI
2252313086aSBlue Swirl
226d7f9b689SLuiz Capitulino    {
227d7f9b689SLuiz Capitulino        .name       = "log",
228d7f9b689SLuiz Capitulino        .args_type  = "items:s",
229d7f9b689SLuiz Capitulino        .params     = "item1[,...]",
230d7f9b689SLuiz Capitulino        .help       = "activate logging of the specified items to '/tmp/qemu.log'",
231af4ce882SLuiz Capitulino        .mhandler.cmd = do_log,
232d7f9b689SLuiz Capitulino    },
233d7f9b689SLuiz Capitulino
2342313086aSBlue SwirlSTEXI
2352313086aSBlue Swirl@item log @var{item1}[,...]
23670fcbbe7SStefan Weil@findex log
2372313086aSBlue SwirlActivate logging of the specified items to @file{/tmp/qemu.log}.
2382313086aSBlue SwirlETEXI
2392313086aSBlue Swirl
240d7f9b689SLuiz Capitulino    {
241d7f9b689SLuiz Capitulino        .name       = "savevm",
242d7f9b689SLuiz Capitulino        .args_type  = "name:s?",
243d7f9b689SLuiz Capitulino        .params     = "[tag|id]",
244d7f9b689SLuiz Capitulino        .help       = "save a VM snapshot. If no tag or id are provided, a new snapshot is created",
245af4ce882SLuiz Capitulino        .mhandler.cmd = do_savevm,
246d7f9b689SLuiz Capitulino    },
247d7f9b689SLuiz Capitulino
2482313086aSBlue SwirlSTEXI
2492313086aSBlue Swirl@item savevm [@var{tag}|@var{id}]
25070fcbbe7SStefan Weil@findex savevm
2512313086aSBlue SwirlCreate a snapshot of the whole virtual machine. If @var{tag} is
2522313086aSBlue Swirlprovided, it is used as human readable identifier. If there is already
2532313086aSBlue Swirla snapshot with the same tag or ID, it is replaced. More info at
2542313086aSBlue Swirl@ref{vm_snapshots}.
2552313086aSBlue SwirlETEXI
2562313086aSBlue Swirl
257d7f9b689SLuiz Capitulino    {
258d7f9b689SLuiz Capitulino        .name       = "loadvm",
259d7f9b689SLuiz Capitulino        .args_type  = "name:s",
260d7f9b689SLuiz Capitulino        .params     = "tag|id",
261d7f9b689SLuiz Capitulino        .help       = "restore a VM snapshot from its tag or id",
262af4ce882SLuiz Capitulino        .mhandler.cmd = do_loadvm,
263d7f9b689SLuiz Capitulino    },
264d7f9b689SLuiz Capitulino
2652313086aSBlue SwirlSTEXI
2662313086aSBlue Swirl@item loadvm @var{tag}|@var{id}
26770fcbbe7SStefan Weil@findex loadvm
2682313086aSBlue SwirlSet the whole virtual machine to the snapshot identified by the tag
2692313086aSBlue Swirl@var{tag} or the unique snapshot ID @var{id}.
2702313086aSBlue SwirlETEXI
2712313086aSBlue Swirl
272d7f9b689SLuiz Capitulino    {
273d7f9b689SLuiz Capitulino        .name       = "delvm",
274d7f9b689SLuiz Capitulino        .args_type  = "name:s",
275d7f9b689SLuiz Capitulino        .params     = "tag|id",
276d7f9b689SLuiz Capitulino        .help       = "delete a VM snapshot from its tag or id",
277af4ce882SLuiz Capitulino        .mhandler.cmd = do_delvm,
278d7f9b689SLuiz Capitulino    },
279d7f9b689SLuiz Capitulino
2802313086aSBlue SwirlSTEXI
2812313086aSBlue Swirl@item delvm @var{tag}|@var{id}
28270fcbbe7SStefan Weil@findex delvm
2832313086aSBlue SwirlDelete the snapshot identified by @var{tag} or @var{id}.
2842313086aSBlue SwirlETEXI
2852313086aSBlue Swirl
286d7f9b689SLuiz Capitulino    {
287d7f9b689SLuiz Capitulino        .name       = "singlestep",
288d7f9b689SLuiz Capitulino        .args_type  = "option:s?",
289d7f9b689SLuiz Capitulino        .params     = "[on|off]",
290d7f9b689SLuiz Capitulino        .help       = "run emulation in singlestep mode or switch to normal mode",
291af4ce882SLuiz Capitulino        .mhandler.cmd = do_singlestep,
292d7f9b689SLuiz Capitulino    },
293d7f9b689SLuiz Capitulino
2942313086aSBlue SwirlSTEXI
2952313086aSBlue Swirl@item singlestep [off]
29670fcbbe7SStefan Weil@findex singlestep
2972313086aSBlue SwirlRun the emulation in single step mode.
2982313086aSBlue SwirlIf called with option off, the emulation returns to normal mode.
2992313086aSBlue SwirlETEXI
3002313086aSBlue Swirl
301d7f9b689SLuiz Capitulino    {
302d7f9b689SLuiz Capitulino        .name       = "stop",
303d7f9b689SLuiz Capitulino        .args_type  = "",
304d7f9b689SLuiz Capitulino        .params     = "",
305d7f9b689SLuiz Capitulino        .help       = "stop emulation",
306e0c97bdeSLuiz Capitulino        .user_print = monitor_user_noop,
307261394dbSLuiz Capitulino        .mhandler.cmd_new = do_stop,
308d7f9b689SLuiz Capitulino    },
309d7f9b689SLuiz Capitulino
3102313086aSBlue SwirlSTEXI
3112313086aSBlue Swirl@item stop
31270fcbbe7SStefan Weil@findex stop
3132313086aSBlue SwirlStop emulation.
3142313086aSBlue SwirlETEXI
3152313086aSBlue Swirl
316d7f9b689SLuiz Capitulino    {
317d7f9b689SLuiz Capitulino        .name       = "c|cont",
318d7f9b689SLuiz Capitulino        .args_type  = "",
319d7f9b689SLuiz Capitulino        .params     = "",
320d7f9b689SLuiz Capitulino        .help       = "resume emulation",
321a1f896a0SLuiz Capitulino        .user_print = monitor_user_noop,
322261394dbSLuiz Capitulino        .mhandler.cmd_new = do_cont,
323d7f9b689SLuiz Capitulino    },
324d7f9b689SLuiz Capitulino
3252313086aSBlue SwirlSTEXI
3262313086aSBlue Swirl@item c or cont
32770fcbbe7SStefan Weil@findex cont
3282313086aSBlue SwirlResume emulation.
3292313086aSBlue SwirlETEXI
3302313086aSBlue Swirl
331d7f9b689SLuiz Capitulino    {
332d7f9b689SLuiz Capitulino        .name       = "gdbserver",
333d7f9b689SLuiz Capitulino        .args_type  = "device:s?",
334d7f9b689SLuiz Capitulino        .params     = "[device]",
335d7f9b689SLuiz Capitulino        .help       = "start gdbserver on given device (default 'tcp::1234'), stop with 'none'",
336af4ce882SLuiz Capitulino        .mhandler.cmd = do_gdbserver,
337d7f9b689SLuiz Capitulino    },
338d7f9b689SLuiz Capitulino
3392313086aSBlue SwirlSTEXI
3402313086aSBlue Swirl@item gdbserver [@var{port}]
34170fcbbe7SStefan Weil@findex gdbserver
3422313086aSBlue SwirlStart gdbserver session (default @var{port}=1234)
3432313086aSBlue SwirlETEXI
3442313086aSBlue Swirl
345d7f9b689SLuiz Capitulino    {
346d7f9b689SLuiz Capitulino        .name       = "x",
347d7f9b689SLuiz Capitulino        .args_type  = "fmt:/,addr:l",
348d7f9b689SLuiz Capitulino        .params     = "/fmt addr",
349d7f9b689SLuiz Capitulino        .help       = "virtual memory dump starting at 'addr'",
350af4ce882SLuiz Capitulino        .mhandler.cmd = do_memory_dump,
351d7f9b689SLuiz Capitulino    },
352d7f9b689SLuiz Capitulino
3532313086aSBlue SwirlSTEXI
3542313086aSBlue Swirl@item x/fmt @var{addr}
35570fcbbe7SStefan Weil@findex x
3562313086aSBlue SwirlVirtual memory dump starting at @var{addr}.
3572313086aSBlue SwirlETEXI
3582313086aSBlue Swirl
359d7f9b689SLuiz Capitulino    {
360d7f9b689SLuiz Capitulino        .name       = "xp",
361d7f9b689SLuiz Capitulino        .args_type  = "fmt:/,addr:l",
362d7f9b689SLuiz Capitulino        .params     = "/fmt addr",
363d7f9b689SLuiz Capitulino        .help       = "physical memory dump starting at 'addr'",
364af4ce882SLuiz Capitulino        .mhandler.cmd = do_physical_memory_dump,
365d7f9b689SLuiz Capitulino    },
366d7f9b689SLuiz Capitulino
3672313086aSBlue SwirlSTEXI
3682313086aSBlue Swirl@item xp /@var{fmt} @var{addr}
36970fcbbe7SStefan Weil@findex xp
3702313086aSBlue SwirlPhysical memory dump starting at @var{addr}.
3712313086aSBlue Swirl
3722313086aSBlue Swirl@var{fmt} is a format which tells the command how to format the
3732313086aSBlue Swirldata. Its syntax is: @option{/@{count@}@{format@}@{size@}}
3742313086aSBlue Swirl
3752313086aSBlue Swirl@table @var
3762313086aSBlue Swirl@item count
37770fcbbe7SStefan Weil@findex count
3782313086aSBlue Swirlis the number of items to be dumped.
3792313086aSBlue Swirl
3802313086aSBlue Swirl@item format
38170fcbbe7SStefan Weil@findex format
3822313086aSBlue Swirlcan be x (hex), d (signed decimal), u (unsigned decimal), o (octal),
3832313086aSBlue Swirlc (char) or i (asm instruction).
3842313086aSBlue Swirl
3852313086aSBlue Swirl@item size
38670fcbbe7SStefan Weil@findex size
3872313086aSBlue Swirlcan be b (8 bits), h (16 bits), w (32 bits) or g (64 bits). On x86,
3882313086aSBlue Swirl@code{h} or @code{w} can be specified with the @code{i} format to
3892313086aSBlue Swirlrespectively select 16 or 32 bit code instruction size.
3902313086aSBlue Swirl
3912313086aSBlue Swirl@end table
3922313086aSBlue Swirl
3932313086aSBlue SwirlExamples:
3942313086aSBlue Swirl@itemize
3952313086aSBlue Swirl@item
3962313086aSBlue SwirlDump 10 instructions at the current instruction pointer:
3972313086aSBlue Swirl@example
3982313086aSBlue Swirl(qemu) x/10i $eip
3992313086aSBlue Swirl0x90107063:  ret
4002313086aSBlue Swirl0x90107064:  sti
4012313086aSBlue Swirl0x90107065:  lea    0x0(%esi,1),%esi
4022313086aSBlue Swirl0x90107069:  lea    0x0(%edi,1),%edi
4032313086aSBlue Swirl0x90107070:  ret
4042313086aSBlue Swirl0x90107071:  jmp    0x90107080
4052313086aSBlue Swirl0x90107073:  nop
4062313086aSBlue Swirl0x90107074:  nop
4072313086aSBlue Swirl0x90107075:  nop
4082313086aSBlue Swirl0x90107076:  nop
4092313086aSBlue Swirl@end example
4102313086aSBlue Swirl
4112313086aSBlue Swirl@item
4122313086aSBlue SwirlDump 80 16 bit values at the start of the video memory.
4132313086aSBlue Swirl@smallexample
4142313086aSBlue Swirl(qemu) xp/80hx 0xb8000
4152313086aSBlue Swirl0x000b8000: 0x0b50 0x0b6c 0x0b65 0x0b78 0x0b38 0x0b36 0x0b2f 0x0b42
4162313086aSBlue Swirl0x000b8010: 0x0b6f 0x0b63 0x0b68 0x0b73 0x0b20 0x0b56 0x0b47 0x0b41
4172313086aSBlue Swirl0x000b8020: 0x0b42 0x0b69 0x0b6f 0x0b73 0x0b20 0x0b63 0x0b75 0x0b72
4182313086aSBlue Swirl0x000b8030: 0x0b72 0x0b65 0x0b6e 0x0b74 0x0b2d 0x0b63 0x0b76 0x0b73
4192313086aSBlue Swirl0x000b8040: 0x0b20 0x0b30 0x0b35 0x0b20 0x0b4e 0x0b6f 0x0b76 0x0b20
4202313086aSBlue Swirl0x000b8050: 0x0b32 0x0b30 0x0b30 0x0b33 0x0720 0x0720 0x0720 0x0720
4212313086aSBlue Swirl0x000b8060: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4222313086aSBlue Swirl0x000b8070: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4232313086aSBlue Swirl0x000b8080: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4242313086aSBlue Swirl0x000b8090: 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720 0x0720
4252313086aSBlue Swirl@end smallexample
4262313086aSBlue Swirl@end itemize
4272313086aSBlue SwirlETEXI
4282313086aSBlue Swirl
429d7f9b689SLuiz Capitulino    {
430d7f9b689SLuiz Capitulino        .name       = "p|print",
431d7f9b689SLuiz Capitulino        .args_type  = "fmt:/,val:l",
432d7f9b689SLuiz Capitulino        .params     = "/fmt expr",
433d7f9b689SLuiz Capitulino        .help       = "print expression value (use $reg for CPU register access)",
434af4ce882SLuiz Capitulino        .mhandler.cmd = do_print,
435d7f9b689SLuiz Capitulino    },
436d7f9b689SLuiz Capitulino
4372313086aSBlue SwirlSTEXI
4382313086aSBlue Swirl@item p or print/@var{fmt} @var{expr}
43970fcbbe7SStefan Weil@findex print
4402313086aSBlue Swirl
4412313086aSBlue SwirlPrint expression value. Only the @var{format} part of @var{fmt} is
4422313086aSBlue Swirlused.
4432313086aSBlue SwirlETEXI
4442313086aSBlue Swirl
445d7f9b689SLuiz Capitulino    {
446d7f9b689SLuiz Capitulino        .name       = "i",
447d7f9b689SLuiz Capitulino        .args_type  = "fmt:/,addr:i,index:i.",
448d7f9b689SLuiz Capitulino        .params     = "/fmt addr",
449d7f9b689SLuiz Capitulino        .help       = "I/O port read",
450af4ce882SLuiz Capitulino        .mhandler.cmd = do_ioport_read,
451d7f9b689SLuiz Capitulino    },
452d7f9b689SLuiz Capitulino
4532313086aSBlue SwirlSTEXI
4542313086aSBlue SwirlRead I/O port.
4552313086aSBlue SwirlETEXI
4562313086aSBlue Swirl
457d7f9b689SLuiz Capitulino    {
458d7f9b689SLuiz Capitulino        .name       = "o",
459d7f9b689SLuiz Capitulino        .args_type  = "fmt:/,addr:i,val:i",
460d7f9b689SLuiz Capitulino        .params     = "/fmt addr value",
461d7f9b689SLuiz Capitulino        .help       = "I/O port write",
462af4ce882SLuiz Capitulino        .mhandler.cmd = do_ioport_write,
463d7f9b689SLuiz Capitulino    },
464d7f9b689SLuiz Capitulino
465f114784fSJan KiszkaSTEXI
466f114784fSJan KiszkaWrite to I/O port.
467f114784fSJan KiszkaETEXI
4682313086aSBlue Swirl
469d7f9b689SLuiz Capitulino    {
470d7f9b689SLuiz Capitulino        .name       = "sendkey",
471d7f9b689SLuiz Capitulino        .args_type  = "string:s,hold_time:i?",
472d7f9b689SLuiz Capitulino        .params     = "keys [hold_ms]",
473d7f9b689SLuiz Capitulino        .help       = "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)",
474af4ce882SLuiz Capitulino        .mhandler.cmd = do_sendkey,
475d7f9b689SLuiz Capitulino    },
476d7f9b689SLuiz Capitulino
4772313086aSBlue SwirlSTEXI
4782313086aSBlue Swirl@item sendkey @var{keys}
47970fcbbe7SStefan Weil@findex sendkey
4802313086aSBlue Swirl
4812313086aSBlue SwirlSend @var{keys} to the emulator. @var{keys} could be the name of the
4822313086aSBlue Swirlkey or @code{#} followed by the raw value in either decimal or hexadecimal
4832313086aSBlue Swirlformat. Use @code{-} to press several keys simultaneously. Example:
4842313086aSBlue Swirl@example
4852313086aSBlue Swirlsendkey ctrl-alt-f1
4862313086aSBlue Swirl@end example
4872313086aSBlue Swirl
4882313086aSBlue SwirlThis command is useful to send keys that your graphical user interface
4892313086aSBlue Swirlintercepts at low level, such as @code{ctrl-alt-f1} in X Window.
4902313086aSBlue SwirlETEXI
4912313086aSBlue Swirl
492d7f9b689SLuiz Capitulino    {
493d7f9b689SLuiz Capitulino        .name       = "system_reset",
494d7f9b689SLuiz Capitulino        .args_type  = "",
495d7f9b689SLuiz Capitulino        .params     = "",
496d7f9b689SLuiz Capitulino        .help       = "reset the system",
497c80d259eSLuiz Capitulino        .user_print = monitor_user_noop,
498261394dbSLuiz Capitulino        .mhandler.cmd_new = do_system_reset,
499d7f9b689SLuiz Capitulino    },
500d7f9b689SLuiz Capitulino
5012313086aSBlue SwirlSTEXI
5022313086aSBlue Swirl@item system_reset
50370fcbbe7SStefan Weil@findex system_reset
5042313086aSBlue Swirl
5052313086aSBlue SwirlReset the system.
5062313086aSBlue SwirlETEXI
5072313086aSBlue Swirl
508d7f9b689SLuiz Capitulino    {
509d7f9b689SLuiz Capitulino        .name       = "system_powerdown",
510d7f9b689SLuiz Capitulino        .args_type  = "",
511d7f9b689SLuiz Capitulino        .params     = "",
512d7f9b689SLuiz Capitulino        .help       = "send system power down event",
51343076664SLuiz Capitulino        .user_print = monitor_user_noop,
514261394dbSLuiz Capitulino        .mhandler.cmd_new = do_system_powerdown,
515d7f9b689SLuiz Capitulino    },
516d7f9b689SLuiz Capitulino
5172313086aSBlue SwirlSTEXI
5182313086aSBlue Swirl@item system_powerdown
51970fcbbe7SStefan Weil@findex system_powerdown
5202313086aSBlue Swirl
5212313086aSBlue SwirlPower down the system (if supported).
5222313086aSBlue SwirlETEXI
5232313086aSBlue Swirl
524d7f9b689SLuiz Capitulino    {
525d7f9b689SLuiz Capitulino        .name       = "sum",
526d7f9b689SLuiz Capitulino        .args_type  = "start:i,size:i",
527d7f9b689SLuiz Capitulino        .params     = "addr size",
528d7f9b689SLuiz Capitulino        .help       = "compute the checksum of a memory region",
529af4ce882SLuiz Capitulino        .mhandler.cmd = do_sum,
530d7f9b689SLuiz Capitulino    },
531d7f9b689SLuiz Capitulino
5322313086aSBlue SwirlSTEXI
5332313086aSBlue Swirl@item sum @var{addr} @var{size}
53470fcbbe7SStefan Weil@findex sum
5352313086aSBlue Swirl
5362313086aSBlue SwirlCompute the checksum of a memory region.
5372313086aSBlue SwirlETEXI
5382313086aSBlue Swirl
539d7f9b689SLuiz Capitulino    {
540d7f9b689SLuiz Capitulino        .name       = "usb_add",
541d7f9b689SLuiz Capitulino        .args_type  = "devname:s",
542d7f9b689SLuiz Capitulino        .params     = "device",
543d7f9b689SLuiz Capitulino        .help       = "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')",
544af4ce882SLuiz Capitulino        .mhandler.cmd = do_usb_add,
545d7f9b689SLuiz Capitulino    },
546d7f9b689SLuiz Capitulino
5472313086aSBlue SwirlSTEXI
5482313086aSBlue Swirl@item usb_add @var{devname}
54970fcbbe7SStefan Weil@findex usb_add
5502313086aSBlue Swirl
5512313086aSBlue SwirlAdd the USB device @var{devname}.  For details of available devices see
5522313086aSBlue Swirl@ref{usb_devices}
5532313086aSBlue SwirlETEXI
5542313086aSBlue Swirl
555d7f9b689SLuiz Capitulino    {
556d7f9b689SLuiz Capitulino        .name       = "usb_del",
557d7f9b689SLuiz Capitulino        .args_type  = "devname:s",
558d7f9b689SLuiz Capitulino        .params     = "device",
559d7f9b689SLuiz Capitulino        .help       = "remove USB device 'bus.addr'",
560af4ce882SLuiz Capitulino        .mhandler.cmd = do_usb_del,
561d7f9b689SLuiz Capitulino    },
562d7f9b689SLuiz Capitulino
5632313086aSBlue SwirlSTEXI
5642313086aSBlue Swirl@item usb_del @var{devname}
56570fcbbe7SStefan Weil@findex usb_del
5662313086aSBlue Swirl
5672313086aSBlue SwirlRemove the USB device @var{devname} from the QEMU virtual USB
5682313086aSBlue Swirlhub. @var{devname} has the syntax @code{bus.addr}. Use the monitor
5692313086aSBlue Swirlcommand @code{info usb} to see the devices you can remove.
5702313086aSBlue SwirlETEXI
5712313086aSBlue Swirl
572d7f9b689SLuiz Capitulino    {
573d7f9b689SLuiz Capitulino        .name       = "device_add",
574c7e4e8ceSMarkus Armbruster        .args_type  = "device:O",
575c7e4e8ceSMarkus Armbruster        .params     = "driver[,prop=value][,...]",
576d7f9b689SLuiz Capitulino        .help       = "add device, like -device on the command line",
5778bc27249SMarkus Armbruster        .user_print = monitor_user_noop,
5788bc27249SMarkus Armbruster        .mhandler.cmd_new = do_device_add,
579d7f9b689SLuiz Capitulino    },
580d7f9b689SLuiz Capitulino
5813418bd25SGerd HoffmannSTEXI
5823418bd25SGerd Hoffmann@item device_add @var{config}
58370fcbbe7SStefan Weil@findex device_add
5843418bd25SGerd Hoffmann
5853418bd25SGerd HoffmannAdd device.
5863418bd25SGerd HoffmannETEXI
5873418bd25SGerd Hoffmann
588d7f9b689SLuiz Capitulino    {
589d7f9b689SLuiz Capitulino        .name       = "device_del",
590d7f9b689SLuiz Capitulino        .args_type  = "id:s",
591d7f9b689SLuiz Capitulino        .params     = "device",
592d7f9b689SLuiz Capitulino        .help       = "remove device",
59317a38eaaSMarkus Armbruster        .user_print = monitor_user_noop,
59417a38eaaSMarkus Armbruster        .mhandler.cmd_new = do_device_del,
595d7f9b689SLuiz Capitulino    },
596d7f9b689SLuiz Capitulino
5973418bd25SGerd HoffmannSTEXI
5983418bd25SGerd Hoffmann@item device_del @var{id}
59970fcbbe7SStefan Weil@findex device_del
6003418bd25SGerd Hoffmann
6013418bd25SGerd HoffmannRemove device @var{id}.
6023418bd25SGerd HoffmannETEXI
6033418bd25SGerd Hoffmann
604d7f9b689SLuiz Capitulino    {
605d7f9b689SLuiz Capitulino        .name       = "cpu",
606d7f9b689SLuiz Capitulino        .args_type  = "index:i",
607d7f9b689SLuiz Capitulino        .params     = "index",
608d7f9b689SLuiz Capitulino        .help       = "set the default CPU",
60981a1b45aSMarkus Armbruster        .user_print = monitor_user_noop,
610261394dbSLuiz Capitulino        .mhandler.cmd_new = do_cpu_set,
611d7f9b689SLuiz Capitulino    },
6123418bd25SGerd Hoffmann
6132313086aSBlue SwirlSTEXI
614*c427ea9cSMarkus Armbruster@item cpu @var{index}
615*c427ea9cSMarkus Armbruster@findex cpu
6162313086aSBlue SwirlSet the default CPU.
6172313086aSBlue SwirlETEXI
6182313086aSBlue Swirl
619d7f9b689SLuiz Capitulino    {
620d7f9b689SLuiz Capitulino        .name       = "mouse_move",
621d7f9b689SLuiz Capitulino        .args_type  = "dx_str:s,dy_str:s,dz_str:s?",
622d7f9b689SLuiz Capitulino        .params     = "dx dy [dz]",
623d7f9b689SLuiz Capitulino        .help       = "send mouse move events",
624af4ce882SLuiz Capitulino        .mhandler.cmd = do_mouse_move,
625d7f9b689SLuiz Capitulino    },
626d7f9b689SLuiz Capitulino
6272313086aSBlue SwirlSTEXI
6282313086aSBlue Swirl@item mouse_move @var{dx} @var{dy} [@var{dz}]
62970fcbbe7SStefan Weil@findex mouse_move
6302313086aSBlue SwirlMove the active mouse to the specified coordinates @var{dx} @var{dy}
6312313086aSBlue Swirlwith optional scroll axis @var{dz}.
6322313086aSBlue SwirlETEXI
6332313086aSBlue Swirl
634d7f9b689SLuiz Capitulino    {
635d7f9b689SLuiz Capitulino        .name       = "mouse_button",
636d7f9b689SLuiz Capitulino        .args_type  = "button_state:i",
637d7f9b689SLuiz Capitulino        .params     = "state",
638d7f9b689SLuiz Capitulino        .help       = "change mouse button state (1=L, 2=M, 4=R)",
639af4ce882SLuiz Capitulino        .mhandler.cmd = do_mouse_button,
640d7f9b689SLuiz Capitulino    },
641d7f9b689SLuiz Capitulino
6422313086aSBlue SwirlSTEXI
6432313086aSBlue Swirl@item mouse_button @var{val}
64470fcbbe7SStefan Weil@findex mouse_button
6452313086aSBlue SwirlChange the active mouse button state @var{val} (1=L, 2=M, 4=R).
6462313086aSBlue SwirlETEXI
6472313086aSBlue Swirl
648d7f9b689SLuiz Capitulino    {
649d7f9b689SLuiz Capitulino        .name       = "mouse_set",
650d7f9b689SLuiz Capitulino        .args_type  = "index:i",
651d7f9b689SLuiz Capitulino        .params     = "index",
652d7f9b689SLuiz Capitulino        .help       = "set which mouse device receives events",
653af4ce882SLuiz Capitulino        .mhandler.cmd = do_mouse_set,
654d7f9b689SLuiz Capitulino    },
655d7f9b689SLuiz Capitulino
6562313086aSBlue SwirlSTEXI
6572313086aSBlue Swirl@item mouse_set @var{index}
65870fcbbe7SStefan Weil@findex mouse_set
6592313086aSBlue SwirlSet which mouse device receives events at given @var{index}, index
6602313086aSBlue Swirlcan be obtained with
6612313086aSBlue Swirl@example
6622313086aSBlue Swirlinfo mice
6632313086aSBlue Swirl@end example
6642313086aSBlue SwirlETEXI
6652313086aSBlue Swirl
6662313086aSBlue Swirl#ifdef HAS_AUDIO
667d7f9b689SLuiz Capitulino    {
668d7f9b689SLuiz Capitulino        .name       = "wavcapture",
669d7f9b689SLuiz Capitulino        .args_type  = "path:F,freq:i?,bits:i?,nchannels:i?",
670d7f9b689SLuiz Capitulino        .params     = "path [frequency [bits [channels]]]",
671d7f9b689SLuiz Capitulino        .help       = "capture audio to a wave file (default frequency=44100 bits=16 channels=2)",
672af4ce882SLuiz Capitulino        .mhandler.cmd = do_wav_capture,
673d7f9b689SLuiz Capitulino    },
6742313086aSBlue Swirl#endif
6752313086aSBlue SwirlSTEXI
6762313086aSBlue Swirl@item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]
67770fcbbe7SStefan Weil@findex wavcapture
6782313086aSBlue SwirlCapture audio into @var{filename}. Using sample rate @var{frequency}
6792313086aSBlue Swirlbits per sample @var{bits} and number of channels @var{channels}.
6802313086aSBlue Swirl
6812313086aSBlue SwirlDefaults:
6822313086aSBlue Swirl@itemize @minus
6832313086aSBlue Swirl@item Sample rate = 44100 Hz - CD quality
6842313086aSBlue Swirl@item Bits = 16
6852313086aSBlue Swirl@item Number of channels = 2 - Stereo
6862313086aSBlue Swirl@end itemize
6872313086aSBlue SwirlETEXI
6882313086aSBlue Swirl
6892313086aSBlue Swirl#ifdef HAS_AUDIO
690d7f9b689SLuiz Capitulino    {
691d7f9b689SLuiz Capitulino        .name       = "stopcapture",
692d7f9b689SLuiz Capitulino        .args_type  = "n:i",
693d7f9b689SLuiz Capitulino        .params     = "capture index",
694d7f9b689SLuiz Capitulino        .help       = "stop capture",
695af4ce882SLuiz Capitulino        .mhandler.cmd = do_stop_capture,
696d7f9b689SLuiz Capitulino    },
6972313086aSBlue Swirl#endif
6982313086aSBlue SwirlSTEXI
6992313086aSBlue Swirl@item stopcapture @var{index}
70070fcbbe7SStefan Weil@findex stopcapture
7012313086aSBlue SwirlStop capture with a given @var{index}, index can be obtained with
7022313086aSBlue Swirl@example
7032313086aSBlue Swirlinfo capture
7042313086aSBlue Swirl@end example
7052313086aSBlue SwirlETEXI
7062313086aSBlue Swirl
707d7f9b689SLuiz Capitulino    {
708d7f9b689SLuiz Capitulino        .name       = "memsave",
709d7f9b689SLuiz Capitulino        .args_type  = "val:l,size:i,filename:s",
710d7f9b689SLuiz Capitulino        .params     = "addr size file",
711d7f9b689SLuiz Capitulino        .help       = "save to disk virtual memory dump starting at 'addr' of size 'size'",
71257e09454SLuiz Capitulino        .user_print = monitor_user_noop,
713261394dbSLuiz Capitulino        .mhandler.cmd_new = do_memory_save,
714d7f9b689SLuiz Capitulino    },
715d7f9b689SLuiz Capitulino
7162313086aSBlue SwirlSTEXI
7172313086aSBlue Swirl@item memsave @var{addr} @var{size} @var{file}
71870fcbbe7SStefan Weil@findex memsave
7192313086aSBlue Swirlsave to disk virtual memory dump starting at @var{addr} of size @var{size}.
7202313086aSBlue SwirlETEXI
7212313086aSBlue Swirl
722d7f9b689SLuiz Capitulino    {
723d7f9b689SLuiz Capitulino        .name       = "pmemsave",
724d7f9b689SLuiz Capitulino        .args_type  = "val:l,size:i,filename:s",
725d7f9b689SLuiz Capitulino        .params     = "addr size file",
726d7f9b689SLuiz Capitulino        .help       = "save to disk physical memory dump starting at 'addr' of size 'size'",
72718f5a8bfSLuiz Capitulino        .user_print = monitor_user_noop,
728261394dbSLuiz Capitulino        .mhandler.cmd_new = do_physical_memory_save,
729d7f9b689SLuiz Capitulino    },
730d7f9b689SLuiz Capitulino
7312313086aSBlue SwirlSTEXI
7322313086aSBlue Swirl@item pmemsave @var{addr} @var{size} @var{file}
73370fcbbe7SStefan Weil@findex pmemsave
7342313086aSBlue Swirlsave to disk physical memory dump starting at @var{addr} of size @var{size}.
7352313086aSBlue SwirlETEXI
7362313086aSBlue Swirl
737d7f9b689SLuiz Capitulino    {
738d7f9b689SLuiz Capitulino        .name       = "boot_set",
739d7f9b689SLuiz Capitulino        .args_type  = "bootdevice:s",
740d7f9b689SLuiz Capitulino        .params     = "bootdevice",
741d7f9b689SLuiz Capitulino        .help       = "define new values for the boot device list",
742af4ce882SLuiz Capitulino        .mhandler.cmd = do_boot_set,
743d7f9b689SLuiz Capitulino    },
744d7f9b689SLuiz Capitulino
7452313086aSBlue SwirlSTEXI
7462313086aSBlue Swirl@item boot_set @var{bootdevicelist}
74770fcbbe7SStefan Weil@findex boot_set
7482313086aSBlue Swirl
7492313086aSBlue SwirlDefine new values for the boot device list. Those values will override
7502313086aSBlue Swirlthe values specified on the command line through the @code{-boot} option.
7512313086aSBlue Swirl
7522313086aSBlue SwirlThe values that can be specified here depend on the machine type, but are
7532313086aSBlue Swirlthe same that can be specified in the @code{-boot} command line option.
7542313086aSBlue SwirlETEXI
7552313086aSBlue Swirl
7562313086aSBlue Swirl#if defined(TARGET_I386)
757d7f9b689SLuiz Capitulino    {
758d7f9b689SLuiz Capitulino        .name       = "nmi",
759d7f9b689SLuiz Capitulino        .args_type  = "cpu_index:i",
760d7f9b689SLuiz Capitulino        .params     = "cpu",
761d7f9b689SLuiz Capitulino        .help       = "inject an NMI on the given CPU",
762af4ce882SLuiz Capitulino        .mhandler.cmd = do_inject_nmi,
763d7f9b689SLuiz Capitulino    },
7642313086aSBlue Swirl#endif
7652313086aSBlue SwirlSTEXI
7662313086aSBlue Swirl@item nmi @var{cpu}
76770fcbbe7SStefan Weil@findex nmi
7682313086aSBlue SwirlInject an NMI on the given CPU (x86 only).
7692313086aSBlue SwirlETEXI
7702313086aSBlue Swirl
771d7f9b689SLuiz Capitulino    {
772d7f9b689SLuiz Capitulino        .name       = "migrate",
773fbc3d96cSlirans@il.ibm.com        .args_type  = "detach:-d,blk:-b,inc:-i,uri:s",
774fbc3d96cSlirans@il.ibm.com        .params     = "[-d] [-b] [-i] uri",
775fbc3d96cSlirans@il.ibm.com        .help       = "migrate to URI (using -d to not wait for completion)"
776fbc3d96cSlirans@il.ibm.com		      "\n\t\t\t -b for migration without shared storage with"
777fbc3d96cSlirans@il.ibm.com		      " full copy of disk\n\t\t\t -i for migration without "
778fbc3d96cSlirans@il.ibm.com		      "shared storage with incremental copy of disk "
779fbc3d96cSlirans@il.ibm.com		      "(base image shared between src and destination)",
7805f79da00SLuiz Capitulino        .user_print = monitor_user_noop,
781261394dbSLuiz Capitulino	.mhandler.cmd_new = do_migrate,
782d7f9b689SLuiz Capitulino    },
783d7f9b689SLuiz Capitulino
784fbc3d96cSlirans@il.ibm.com
7852313086aSBlue SwirlSTEXI
786fbc3d96cSlirans@il.ibm.com@item migrate [-d] [-b] [-i] @var{uri}
78770fcbbe7SStefan Weil@findex migrate
7882313086aSBlue SwirlMigrate to @var{uri} (using -d to not wait for completion).
789fbc3d96cSlirans@il.ibm.com	-b for migration with full copy of disk
790fbc3d96cSlirans@il.ibm.com	-i for migration with incremental copy of disk (base image is shared)
7912313086aSBlue SwirlETEXI
7922313086aSBlue Swirl
793d7f9b689SLuiz Capitulino    {
794d7f9b689SLuiz Capitulino        .name       = "migrate_cancel",
795d7f9b689SLuiz Capitulino        .args_type  = "",
796d7f9b689SLuiz Capitulino        .params     = "",
797d7f9b689SLuiz Capitulino        .help       = "cancel the current VM migration",
798911d2963SLuiz Capitulino        .user_print = monitor_user_noop,
799261394dbSLuiz Capitulino        .mhandler.cmd_new = do_migrate_cancel,
800d7f9b689SLuiz Capitulino    },
801d7f9b689SLuiz Capitulino
8022313086aSBlue SwirlSTEXI
8032313086aSBlue Swirl@item migrate_cancel
80470fcbbe7SStefan Weil@findex migrate_cancel
8052313086aSBlue SwirlCancel the current VM migration.
8062313086aSBlue SwirlETEXI
8072313086aSBlue Swirl
808d7f9b689SLuiz Capitulino    {
809d7f9b689SLuiz Capitulino        .name       = "migrate_set_speed",
810ee9545daSMarkus Armbruster        .args_type  = "value:f",
811d7f9b689SLuiz Capitulino        .params     = "value",
812d7f9b689SLuiz Capitulino        .help       = "set maximum speed (in bytes) for migrations",
8135fd9083cSMarkus Armbruster        .user_print = monitor_user_noop,
814261394dbSLuiz Capitulino        .mhandler.cmd_new = do_migrate_set_speed,
815d7f9b689SLuiz Capitulino    },
816d7f9b689SLuiz Capitulino
8172313086aSBlue SwirlSTEXI
8182313086aSBlue Swirl@item migrate_set_speed @var{value}
81970fcbbe7SStefan Weil@findex migrate_set_speed
8202313086aSBlue SwirlSet maximum speed to @var{value} (in bytes) for migrations.
8212313086aSBlue SwirlETEXI
8222313086aSBlue Swirl
823d7f9b689SLuiz Capitulino    {
824d7f9b689SLuiz Capitulino        .name       = "migrate_set_downtime",
825b0fbf7d3SMarkus Armbruster        .args_type  = "value:T",
826d7f9b689SLuiz Capitulino        .params     = "value",
827d7f9b689SLuiz Capitulino        .help       = "set maximum tolerated downtime (in seconds) for migrations",
828c6027f56SMarkus Armbruster        .user_print = monitor_user_noop,
829261394dbSLuiz Capitulino        .mhandler.cmd_new = do_migrate_set_downtime,
830d7f9b689SLuiz Capitulino    },
8312ea42952SGlauber Costa
8322ea42952SGlauber CostaSTEXI
8332ea42952SGlauber Costa@item migrate_set_downtime @var{second}
83470fcbbe7SStefan Weil@findex migrate_set_downtime
8352ea42952SGlauber CostaSet maximum tolerated downtime (in seconds) for migration.
8362ea42952SGlauber CostaETEXI
8372ea42952SGlauber Costa
8382313086aSBlue Swirl#if defined(TARGET_I386)
839d7f9b689SLuiz Capitulino    {
840d7f9b689SLuiz Capitulino        .name       = "drive_add",
841d7f9b689SLuiz Capitulino        .args_type  = "pci_addr:s,opts:s",
842d7f9b689SLuiz Capitulino        .params     = "[[<domain>:]<bus>:]<slot>\n"
8432313086aSBlue Swirl                      "[file=file][,if=type][,bus=n]\n"
8442313086aSBlue Swirl                      "[,unit=m][,media=d][index=i]\n"
8452313086aSBlue Swirl                      "[,cyls=c,heads=h,secs=s[,trans=t]]\n"
8462313086aSBlue Swirl                      "[snapshot=on|off][,cache=on|off]",
847d7f9b689SLuiz Capitulino        .help       = "add drive to PCI storage controller",
848af4ce882SLuiz Capitulino        .mhandler.cmd = drive_hot_add,
849d7f9b689SLuiz Capitulino    },
8502313086aSBlue Swirl#endif
851d7f9b689SLuiz Capitulino
8522313086aSBlue SwirlSTEXI
8532313086aSBlue Swirl@item drive_add
85470fcbbe7SStefan Weil@findex drive_add
8552313086aSBlue SwirlAdd drive to PCI storage controller.
8562313086aSBlue SwirlETEXI
8572313086aSBlue Swirl
8582313086aSBlue Swirl#if defined(TARGET_I386)
859d7f9b689SLuiz Capitulino    {
860d7f9b689SLuiz Capitulino        .name       = "pci_add",
861d7f9b689SLuiz Capitulino        .args_type  = "pci_addr:s,type:s,opts:s?",
862d7f9b689SLuiz Capitulino        .params     = "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...",
863d7f9b689SLuiz Capitulino        .help       = "hot-add PCI device",
8647a344f7aSLuiz Capitulino        .user_print = pci_device_hot_add_print,
865261394dbSLuiz Capitulino        .mhandler.cmd_new = pci_device_hot_add,
866d7f9b689SLuiz Capitulino    },
8672313086aSBlue Swirl#endif
868d7f9b689SLuiz Capitulino
8692313086aSBlue SwirlSTEXI
8702313086aSBlue Swirl@item pci_add
87170fcbbe7SStefan Weil@findex pci_add
8722313086aSBlue SwirlHot-add PCI device.
8732313086aSBlue SwirlETEXI
8742313086aSBlue Swirl
8752313086aSBlue Swirl#if defined(TARGET_I386)
876d7f9b689SLuiz Capitulino    {
877d7f9b689SLuiz Capitulino        .name       = "pci_del",
878d7f9b689SLuiz Capitulino        .args_type  = "pci_addr:s",
879d7f9b689SLuiz Capitulino        .params     = "[[<domain>:]<bus>:]<slot>",
880d7f9b689SLuiz Capitulino        .help       = "hot remove PCI device",
8816848d827SLuiz Capitulino        .user_print = monitor_user_noop,
882261394dbSLuiz Capitulino        .mhandler.cmd_new = do_pci_device_hot_remove,
883d7f9b689SLuiz Capitulino    },
8842313086aSBlue Swirl#endif
885d7f9b689SLuiz Capitulino
8862313086aSBlue SwirlSTEXI
8872313086aSBlue Swirl@item pci_del
88870fcbbe7SStefan Weil@findex pci_del
8892313086aSBlue SwirlHot remove PCI device.
8902313086aSBlue SwirlETEXI
8912313086aSBlue Swirl
892d7f9b689SLuiz Capitulino    {
893d7f9b689SLuiz Capitulino        .name       = "host_net_add",
894d7f9b689SLuiz Capitulino        .args_type  = "device:s,opts:s?",
895d7f9b689SLuiz Capitulino        .params     = "tap|user|socket|vde|dump [options]",
896d7f9b689SLuiz Capitulino        .help       = "add host VLAN client",
897af4ce882SLuiz Capitulino        .mhandler.cmd = net_host_device_add,
898d7f9b689SLuiz Capitulino    },
899d7f9b689SLuiz Capitulino
9002313086aSBlue SwirlSTEXI
9012313086aSBlue Swirl@item host_net_add
90270fcbbe7SStefan Weil@findex host_net_add
9032313086aSBlue SwirlAdd host VLAN client.
9042313086aSBlue SwirlETEXI
9052313086aSBlue Swirl
906d7f9b689SLuiz Capitulino    {
907d7f9b689SLuiz Capitulino        .name       = "host_net_remove",
908d7f9b689SLuiz Capitulino        .args_type  = "vlan_id:i,device:s",
909d7f9b689SLuiz Capitulino        .params     = "vlan_id name",
910d7f9b689SLuiz Capitulino        .help       = "remove host VLAN client",
911af4ce882SLuiz Capitulino        .mhandler.cmd = net_host_device_remove,
912d7f9b689SLuiz Capitulino    },
913d7f9b689SLuiz Capitulino
9142313086aSBlue SwirlSTEXI
9152313086aSBlue Swirl@item host_net_remove
91670fcbbe7SStefan Weil@findex host_net_remove
9172313086aSBlue SwirlRemove host VLAN client.
9182313086aSBlue SwirlETEXI
9192313086aSBlue Swirl
920ae82d324SMarkus Armbruster    {
921ae82d324SMarkus Armbruster        .name       = "netdev_add",
922ae82d324SMarkus Armbruster        .args_type  = "netdev:O",
923ae82d324SMarkus Armbruster        .params     = "[user|tap|socket],id=str[,prop=value][,...]",
924ae82d324SMarkus Armbruster        .help       = "add host network device",
925ae82d324SMarkus Armbruster        .user_print = monitor_user_noop,
926ae82d324SMarkus Armbruster        .mhandler.cmd_new = do_netdev_add,
927ae82d324SMarkus Armbruster    },
928ae82d324SMarkus Armbruster
929ae82d324SMarkus ArmbrusterSTEXI
930ae82d324SMarkus Armbruster@item netdev_add
931ae82d324SMarkus Armbruster@findex netdev_add
932ae82d324SMarkus ArmbrusterAdd host network device.
933ae82d324SMarkus ArmbrusterETEXI
934ae82d324SMarkus Armbruster
935ae82d324SMarkus Armbruster    {
936ae82d324SMarkus Armbruster        .name       = "netdev_del",
937ae82d324SMarkus Armbruster        .args_type  = "id:s",
938ae82d324SMarkus Armbruster        .params     = "id",
939ae82d324SMarkus Armbruster        .help       = "remove host network device",
940ae82d324SMarkus Armbruster        .user_print = monitor_user_noop,
941ae82d324SMarkus Armbruster        .mhandler.cmd_new = do_netdev_del,
942ae82d324SMarkus Armbruster    },
943ae82d324SMarkus Armbruster
944ae82d324SMarkus ArmbrusterSTEXI
945ae82d324SMarkus Armbruster@item netdev_del
946ae82d324SMarkus Armbruster@findex netdev_del
947ae82d324SMarkus ArmbrusterRemove host network device.
948ae82d324SMarkus ArmbrusterETEXI
949ae82d324SMarkus Armbruster
9502313086aSBlue Swirl#ifdef CONFIG_SLIRP
951d7f9b689SLuiz Capitulino    {
952d7f9b689SLuiz Capitulino        .name       = "hostfwd_add",
953d7f9b689SLuiz Capitulino        .args_type  = "arg1:s,arg2:s?,arg3:s?",
954d7f9b689SLuiz Capitulino        .params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
955d7f9b689SLuiz Capitulino        .help       = "redirect TCP or UDP connections from host to guest (requires -net user)",
956af4ce882SLuiz Capitulino        .mhandler.cmd = net_slirp_hostfwd_add,
957d7f9b689SLuiz Capitulino    },
95821413d68SMarkus Armbruster#endif
95921413d68SMarkus ArmbrusterSTEXI
96021413d68SMarkus Armbruster@item hostfwd_add
96121413d68SMarkus Armbruster@findex hostfwd_add
96221413d68SMarkus ArmbrusterRedirect TCP or UDP connections from host to guest (requires -net user).
96321413d68SMarkus ArmbrusterETEXI
964d7f9b689SLuiz Capitulino
96521413d68SMarkus Armbruster#ifdef CONFIG_SLIRP
966d7f9b689SLuiz Capitulino    {
967d7f9b689SLuiz Capitulino        .name       = "hostfwd_remove",
968d7f9b689SLuiz Capitulino        .args_type  = "arg1:s,arg2:s?,arg3:s?",
969d7f9b689SLuiz Capitulino        .params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",
970d7f9b689SLuiz Capitulino        .help       = "remove host-to-guest TCP or UDP redirection",
971af4ce882SLuiz Capitulino        .mhandler.cmd = net_slirp_hostfwd_remove,
972d7f9b689SLuiz Capitulino    },
973d7f9b689SLuiz Capitulino
9742313086aSBlue Swirl#endif
9752313086aSBlue SwirlSTEXI
97621413d68SMarkus Armbruster@item hostfwd_remove
97721413d68SMarkus Armbruster@findex hostfwd_remove
97821413d68SMarkus ArmbrusterRemove host-to-guest TCP or UDP redirection.
9792313086aSBlue SwirlETEXI
9802313086aSBlue Swirl
981d7f9b689SLuiz Capitulino    {
982d7f9b689SLuiz Capitulino        .name       = "balloon",
9833b0bd6ecSLuiz Capitulino        .args_type  = "value:M",
984d7f9b689SLuiz Capitulino        .params     = "target",
985d7f9b689SLuiz Capitulino        .help       = "request VM to change it's memory allocation (in MB)",
98683fb1de2SLuiz Capitulino        .user_print = monitor_user_noop,
987625a5befSAdam Litke        .mhandler.cmd_async = do_balloon,
988625a5befSAdam Litke        .async      = 1,
989d7f9b689SLuiz Capitulino    },
990d7f9b689SLuiz Capitulino
9912313086aSBlue SwirlSTEXI
9922313086aSBlue Swirl@item balloon @var{value}
99370fcbbe7SStefan Weil@findex balloon
9942313086aSBlue SwirlRequest VM to change its memory allocation to @var{value} (in MB).
9952313086aSBlue SwirlETEXI
9962313086aSBlue Swirl
997d7f9b689SLuiz Capitulino    {
998d7f9b689SLuiz Capitulino        .name       = "set_link",
999c9b26a4cSMarkus Armbruster        .args_type  = "name:s,up:b",
1000c9b26a4cSMarkus Armbruster        .params     = "name on|off",
1001d7f9b689SLuiz Capitulino        .help       = "change the link status of a network adapter",
10025369e3c0SMarkus Armbruster        .user_print = monitor_user_noop,
10035369e3c0SMarkus Armbruster        .mhandler.cmd_new = do_set_link,
1004d7f9b689SLuiz Capitulino    },
1005d7f9b689SLuiz Capitulino
10062313086aSBlue SwirlSTEXI
1007c9b26a4cSMarkus Armbruster@item set_link @var{name} [on|off]
100870fcbbe7SStefan Weil@findex set_link
1009c9b26a4cSMarkus ArmbrusterSwitch link @var{name} on (i.e. up) or off (i.e. down).
10102313086aSBlue SwirlETEXI
10112313086aSBlue Swirl
1012d7f9b689SLuiz Capitulino    {
1013d7f9b689SLuiz Capitulino        .name       = "watchdog_action",
1014d7f9b689SLuiz Capitulino        .args_type  = "action:s",
1015d7f9b689SLuiz Capitulino        .params     = "[reset|shutdown|poweroff|pause|debug|none]",
1016d7f9b689SLuiz Capitulino        .help       = "change watchdog action",
1017af4ce882SLuiz Capitulino        .mhandler.cmd = do_watchdog_action,
1018d7f9b689SLuiz Capitulino    },
1019d7f9b689SLuiz Capitulino
10202313086aSBlue SwirlSTEXI
10212313086aSBlue Swirl@item watchdog_action
102270fcbbe7SStefan Weil@findex watchdog_action
10232313086aSBlue SwirlChange watchdog action.
10242313086aSBlue SwirlETEXI
10252313086aSBlue Swirl
1026d7f9b689SLuiz Capitulino    {
1027d7f9b689SLuiz Capitulino        .name       = "acl_show",
1028d7f9b689SLuiz Capitulino        .args_type  = "aclname:s",
1029d7f9b689SLuiz Capitulino        .params     = "aclname",
1030d7f9b689SLuiz Capitulino        .help       = "list rules in the access control list",
1031af4ce882SLuiz Capitulino        .mhandler.cmd = do_acl_show,
1032d7f9b689SLuiz Capitulino    },
1033d7f9b689SLuiz Capitulino
10342313086aSBlue SwirlSTEXI
103515dfcd45SJan Kiszka@item acl_show @var{aclname}
103670fcbbe7SStefan Weil@findex acl_show
103715dfcd45SJan KiszkaList all the matching rules in the access control list, and the default
103815dfcd45SJan Kiszkapolicy. There are currently two named access control lists,
103915dfcd45SJan Kiszka@var{vnc.x509dname} and @var{vnc.username} matching on the x509 client
104015dfcd45SJan Kiszkacertificate distinguished name, and SASL username respectively.
104115dfcd45SJan KiszkaETEXI
10422313086aSBlue Swirl
1043d7f9b689SLuiz Capitulino    {
1044d7f9b689SLuiz Capitulino        .name       = "acl_policy",
1045d7f9b689SLuiz Capitulino        .args_type  = "aclname:s,policy:s",
1046d7f9b689SLuiz Capitulino        .params     = "aclname allow|deny",
1047d7f9b689SLuiz Capitulino        .help       = "set default access control list policy",
1048af4ce882SLuiz Capitulino        .mhandler.cmd = do_acl_policy,
1049d7f9b689SLuiz Capitulino    },
1050d7f9b689SLuiz Capitulino
105115dfcd45SJan KiszkaSTEXI
1052cbbfacc6SJan Kiszka@item acl_policy @var{aclname} @code{allow|deny}
105370fcbbe7SStefan Weil@findex acl_policy
105415dfcd45SJan KiszkaSet the default access control list policy, used in the event that
10552313086aSBlue Swirlnone of the explicit rules match. The default policy at startup is
105615dfcd45SJan Kiszkaalways @code{deny}.
105715dfcd45SJan KiszkaETEXI
105815dfcd45SJan Kiszka
1059d7f9b689SLuiz Capitulino    {
1060d7f9b689SLuiz Capitulino        .name       = "acl_add",
1061d7f9b689SLuiz Capitulino        .args_type  = "aclname:s,match:s,policy:s,index:i?",
1062d7f9b689SLuiz Capitulino        .params     = "aclname match allow|deny [index]",
1063d7f9b689SLuiz Capitulino        .help       = "add a match rule to the access control list",
1064af4ce882SLuiz Capitulino        .mhandler.cmd = do_acl_add,
1065d7f9b689SLuiz Capitulino    },
1066d7f9b689SLuiz Capitulino
106715dfcd45SJan KiszkaSTEXI
10680e4aec98SMarkus Armbruster@item acl_add @var{aclname} @var{match} @code{allow|deny} [@var{index}]
10690e4aec98SMarkus Armbruster@findex acl_add
107015dfcd45SJan KiszkaAdd a match rule to the access control list, allowing or denying access.
107115dfcd45SJan KiszkaThe match will normally be an exact username or x509 distinguished name,
107215dfcd45SJan Kiszkabut can optionally include wildcard globs. eg @code{*@@EXAMPLE.COM} to
107315dfcd45SJan Kiszkaallow all users in the @code{EXAMPLE.COM} kerberos realm. The match will
10742313086aSBlue Swirlnormally be appended to the end of the ACL, but can be inserted
107515dfcd45SJan Kiszkaearlier in the list if the optional @var{index} parameter is supplied.
107615dfcd45SJan KiszkaETEXI
107715dfcd45SJan Kiszka
1078d7f9b689SLuiz Capitulino    {
1079d7f9b689SLuiz Capitulino        .name       = "acl_remove",
1080d7f9b689SLuiz Capitulino        .args_type  = "aclname:s,match:s",
1081d7f9b689SLuiz Capitulino        .params     = "aclname match",
1082d7f9b689SLuiz Capitulino        .help       = "remove a match rule from the access control list",
1083af4ce882SLuiz Capitulino        .mhandler.cmd = do_acl_remove,
1084d7f9b689SLuiz Capitulino    },
1085d7f9b689SLuiz Capitulino
108615dfcd45SJan KiszkaSTEXI
108715dfcd45SJan Kiszka@item acl_remove @var{aclname} @var{match}
108870fcbbe7SStefan Weil@findex acl_remove
108915dfcd45SJan KiszkaRemove the specified match rule from the access control list.
109015dfcd45SJan KiszkaETEXI
109115dfcd45SJan Kiszka
1092d7f9b689SLuiz Capitulino    {
1093d7f9b689SLuiz Capitulino        .name       = "acl_reset",
1094d7f9b689SLuiz Capitulino        .args_type  = "aclname:s",
1095d7f9b689SLuiz Capitulino        .params     = "aclname",
1096d7f9b689SLuiz Capitulino        .help       = "reset the access control list",
1097af4ce882SLuiz Capitulino        .mhandler.cmd = do_acl_reset,
1098d7f9b689SLuiz Capitulino    },
1099d7f9b689SLuiz Capitulino
110015dfcd45SJan KiszkaSTEXI
11010e4aec98SMarkus Armbruster@item acl_reset @var{aclname}
11020e4aec98SMarkus Armbruster@findex acl_reset
110315dfcd45SJan KiszkaRemove all matches from the access control list, and set the default
11042313086aSBlue Swirlpolicy back to @code{deny}.
11052313086aSBlue SwirlETEXI
11062313086aSBlue Swirl
110779c4f6b0SHuang Ying#if defined(TARGET_I386)
1108d7f9b689SLuiz Capitulino
1109d7f9b689SLuiz Capitulino    {
1110d7f9b689SLuiz Capitulino        .name       = "mce",
1111d7f9b689SLuiz Capitulino        .args_type  = "cpu_index:i,bank:i,status:l,mcg_status:l,addr:l,misc:l",
1112d7f9b689SLuiz Capitulino        .params     = "cpu bank status mcgstatus addr misc",
1113d7f9b689SLuiz Capitulino        .help       = "inject a MCE on the given CPU",
1114af4ce882SLuiz Capitulino        .mhandler.cmd = do_inject_mce,
1115d7f9b689SLuiz Capitulino    },
1116d7f9b689SLuiz Capitulino
111779c4f6b0SHuang Ying#endif
111879c4f6b0SHuang YingSTEXI
111979c4f6b0SHuang Ying@item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}
112070fcbbe7SStefan Weil@findex mce (x86)
112179c4f6b0SHuang YingInject an MCE on the given CPU (x86 only).
112279c4f6b0SHuang YingETEXI
112379c4f6b0SHuang Ying
1124d7f9b689SLuiz Capitulino    {
1125d7f9b689SLuiz Capitulino        .name       = "getfd",
1126d7f9b689SLuiz Capitulino        .args_type  = "fdname:s",
1127d7f9b689SLuiz Capitulino        .params     = "getfd name",
1128d7f9b689SLuiz Capitulino        .help       = "receive a file descriptor via SCM rights and assign it a name",
1129f0d6000aSLuiz Capitulino        .user_print = monitor_user_noop,
1130261394dbSLuiz Capitulino        .mhandler.cmd_new = do_getfd,
1131d7f9b689SLuiz Capitulino    },
1132d7f9b689SLuiz Capitulino
1133f07918fdSMark McLoughlinSTEXI
1134f07918fdSMark McLoughlin@item getfd @var{fdname}
113570fcbbe7SStefan Weil@findex getfd
1136f07918fdSMark McLoughlinIf a file descriptor is passed alongside this command using the SCM_RIGHTS
1137f07918fdSMark McLoughlinmechanism on unix sockets, it is stored using the name @var{fdname} for
1138f07918fdSMark McLoughlinlater use by other monitor commands.
1139f07918fdSMark McLoughlinETEXI
1140f07918fdSMark McLoughlin
1141d7f9b689SLuiz Capitulino    {
1142d7f9b689SLuiz Capitulino        .name       = "closefd",
1143d7f9b689SLuiz Capitulino        .args_type  = "fdname:s",
1144d7f9b689SLuiz Capitulino        .params     = "closefd name",
1145d7f9b689SLuiz Capitulino        .help       = "close a file descriptor previously passed via SCM rights",
114618f3a515SLuiz Capitulino        .user_print = monitor_user_noop,
1147261394dbSLuiz Capitulino        .mhandler.cmd_new = do_closefd,
1148d7f9b689SLuiz Capitulino    },
1149d7f9b689SLuiz Capitulino
1150f07918fdSMark McLoughlinSTEXI
1151f07918fdSMark McLoughlin@item closefd @var{fdname}
115270fcbbe7SStefan Weil@findex closefd
1153f07918fdSMark McLoughlinClose the file descriptor previously assigned to @var{fdname} using the
1154f07918fdSMark McLoughlin@code{getfd} command. This is only needed if the file descriptor was never
1155f07918fdSMark McLoughlinused by another monitor command.
1156f07918fdSMark McLoughlinETEXI
1157f07918fdSMark McLoughlin
1158a3a55a2eSLuiz Capitulino    {
1159a3a55a2eSLuiz Capitulino        .name       = "block_passwd",
1160a3a55a2eSLuiz Capitulino        .args_type  = "device:B,password:s",
1161a3a55a2eSLuiz Capitulino        .params     = "block_passwd device password",
1162a3a55a2eSLuiz Capitulino        .help       = "set the password of encrypted block devices",
1163a3a55a2eSLuiz Capitulino        .user_print = monitor_user_noop,
1164261394dbSLuiz Capitulino        .mhandler.cmd_new = do_block_set_passwd,
1165a3a55a2eSLuiz Capitulino    },
1166a3a55a2eSLuiz Capitulino
1167a3a55a2eSLuiz CapitulinoSTEXI
1168a3a55a2eSLuiz Capitulino@item block_passwd @var{device} @var{password}
116970fcbbe7SStefan Weil@findex block_passwd
1170a3a55a2eSLuiz CapitulinoSet the encrypted device @var{device} password to @var{password}
1171a3a55a2eSLuiz CapitulinoETEXI
1172a3a55a2eSLuiz Capitulino
11734a7e1190SLuiz Capitulino    {
11744a7e1190SLuiz Capitulino        .name       = "qmp_capabilities",
11754a7e1190SLuiz Capitulino        .args_type  = "",
11764a7e1190SLuiz Capitulino        .params     = "",
11774a7e1190SLuiz Capitulino        .help       = "enable QMP capabilities",
11784a7e1190SLuiz Capitulino        .user_print = monitor_user_noop,
1179261394dbSLuiz Capitulino        .mhandler.cmd_new = do_qmp_capabilities,
11804a7e1190SLuiz Capitulino    },
11814a7e1190SLuiz Capitulino
11824a7e1190SLuiz CapitulinoSTEXI
11834a7e1190SLuiz Capitulino@item qmp_capabilities
11844a7e1190SLuiz CapitulinoEnable the specified QMP capabilities
11854a7e1190SLuiz CapitulinoETEXI
11864a7e1190SLuiz Capitulino
11872313086aSBlue SwirlSTEXI
11882313086aSBlue Swirl@end table
11892313086aSBlue SwirlETEXI
1190