Diff for /qemu/qemu-monitor.hx between versions 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2018/04/24 17:20:19 version 1.1.1.2, 2018/04/24 17:33:46
Line 9  STEXI Line 9  STEXI
 @table @option  @table @option
 ETEXI  ETEXI
   
     { "help|?", "s?", help_cmd, "[cmd]", "show the help" },      {
           .name       = "help|?",
           .args_type  = "name:s?",
           .params     = "[cmd]",
           .help       = "show the help",
           .mhandler.cmd = do_help_cmd,
       },
   
 STEXI  STEXI
 @item help or ? [@var{cmd}]  @item help or ? [@var{cmd}]
 Show the help for all commands or just for command @var{cmd}.  Show the help for all commands or just for command @var{cmd}.
 ETEXI  ETEXI
   
     { "commit", "s", do_commit,      {
       "device|all", "commit changes to the disk images (if -snapshot is used) or backing files" },          .name       = "commit",
           .args_type  = "device:B",
           .params     = "device|all",
           .help       = "commit changes to the disk images (if -snapshot is used) or backing files",
           .mhandler.cmd = do_commit,
       },
   
 STEXI  STEXI
 @item commit  @item commit
 Commit changes to the disk images (if -snapshot is used) or backing files.  Commit changes to the disk images (if -snapshot is used) or backing files.
 ETEXI  ETEXI
   
     { "info", "s?", do_info,      {
       "[subcommand]", "show various information about the system state" },          .name       = "info",
           .args_type  = "item:s?",
           .params     = "[subcommand]",
           .help       = "show various information about the system state",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_info,
       },
   
 STEXI  STEXI
 @item info @var{subcommand}  @item info @var{subcommand}
 Show various information about the system state.  Show various information about the system state.
Line 57  show virtual to physical memory mappings Line 77  show virtual to physical memory mappings
 show the active virtual memory mappings (i386 only)  show the active virtual memory mappings (i386 only)
 @item info hpet  @item info hpet
 show state of HPET (i386 only)  show state of HPET (i386 only)
 @item info kqemu  
 show KQEMU information  
 @item info kvm  @item info kvm
 show KVM information  show KVM information
 @item info usb  @item info usb
Line 96  show device tree Line 114  show device tree
 @end table  @end table
 ETEXI  ETEXI
   
     { "q|quit", "", do_quit,      {
       "", "quit the emulator" },          .name       = "q|quit",
           .args_type  = "",
           .params     = "",
           .help       = "quit the emulator",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_quit,
       },
   
 STEXI  STEXI
 @item q or quit  @item q or quit
 Quit the emulator.  Quit the emulator.
 ETEXI  ETEXI
   
     { "eject", "-fB", do_eject,      {
       "[-f] device", "eject a removable medium (use -f to force it)" },          .name       = "eject",
           .args_type  = "force:-f,device:B",
           .params     = "[-f] device",
           .help       = "eject a removable medium (use -f to force it)",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_eject,
       },
   
 STEXI  STEXI
 @item eject [-f] @var{device}  @item eject [-f] @var{device}
 Eject a removable medium (use -f to force it).  Eject a removable medium (use -f to force it).
 ETEXI  ETEXI
   
     { "change", "BFs?", do_change,      {
       "device filename [format]", "change a removable medium, optional format" },          .name       = "change",
           .args_type  = "device:B,target:F,arg:s?",
           .params     = "device filename [format]",
           .help       = "change a removable medium, optional format",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_change,
       },
   
 STEXI  STEXI
 @item change @var{device} @var{setting}  @item change @var{device} @var{setting}
   
Line 149  Password: ******** Line 188  Password: ********
 @end table  @end table
 ETEXI  ETEXI
   
     { "screendump", "F", do_screen_dump,      {
       "filename", "save screen into PPM image 'filename'" },          .name       = "screendump",
           .args_type  = "filename:F",
           .params     = "filename",
           .help       = "save screen into PPM image 'filename'",
           .mhandler.cmd = do_screen_dump,
       },
   
 STEXI  STEXI
 @item screendump @var{filename}  @item screendump @var{filename}
 Save screen into PPM image @var{filename}.  Save screen into PPM image @var{filename}.
 ETEXI  ETEXI
   
     { "logfile", "F", do_logfile,      {
       "filename", "output logs to 'filename'" },          .name       = "logfile",
           .args_type  = "filename:F",
           .params     = "filename",
           .help       = "output logs to 'filename'",
           .mhandler.cmd = do_logfile,
       },
   
 STEXI  STEXI
 @item logfile @var{filename}  @item logfile @var{filename}
 Output logs to @var{filename}.  Output logs to @var{filename}.
 ETEXI  ETEXI
   
     { "log", "s", do_log,      {
       "item1[,...]", "activate logging of the specified items to '/tmp/qemu.log'" },          .name       = "log",
           .args_type  = "items:s",
           .params     = "item1[,...]",
           .help       = "activate logging of the specified items to '/tmp/qemu.log'",
           .mhandler.cmd = do_log,
       },
   
 STEXI  STEXI
 @item log @var{item1}[,...]  @item log @var{item1}[,...]
 Activate logging of the specified items to @file{/tmp/qemu.log}.  Activate logging of the specified items to @file{/tmp/qemu.log}.
 ETEXI  ETEXI
   
     { "savevm", "s?", do_savevm,      {
       "[tag|id]", "save a VM snapshot. If no tag or id are provided, a new snapshot is created" },          .name       = "savevm",
           .args_type  = "name:s?",
           .params     = "[tag|id]",
           .help       = "save a VM snapshot. If no tag or id are provided, a new snapshot is created",
           .mhandler.cmd = do_savevm,
       },
   
 STEXI  STEXI
 @item savevm [@var{tag}|@var{id}]  @item savevm [@var{tag}|@var{id}]
 Create a snapshot of the whole virtual machine. If @var{tag} is  Create a snapshot of the whole virtual machine. If @var{tag} is
Line 180  a snapshot with the same tag or ID, it i Line 243  a snapshot with the same tag or ID, it i
 @ref{vm_snapshots}.  @ref{vm_snapshots}.
 ETEXI  ETEXI
   
     { "loadvm", "s", do_loadvm,      {
       "tag|id", "restore a VM snapshot from its tag or id" },          .name       = "loadvm",
           .args_type  = "name:s",
           .params     = "tag|id",
           .help       = "restore a VM snapshot from its tag or id",
           .mhandler.cmd = do_loadvm,
       },
   
 STEXI  STEXI
 @item loadvm @var{tag}|@var{id}  @item loadvm @var{tag}|@var{id}
 Set the whole virtual machine to the snapshot identified by the tag  Set the whole virtual machine to the snapshot identified by the tag
 @var{tag} or the unique snapshot ID @var{id}.  @var{tag} or the unique snapshot ID @var{id}.
 ETEXI  ETEXI
   
     { "delvm", "s", do_delvm,      {
       "tag|id", "delete a VM snapshot from its tag or id" },          .name       = "delvm",
           .args_type  = "name:s",
           .params     = "tag|id",
           .help       = "delete a VM snapshot from its tag or id",
           .mhandler.cmd = do_delvm,
       },
   
 STEXI  STEXI
 @item delvm @var{tag}|@var{id}  @item delvm @var{tag}|@var{id}
 Delete the snapshot identified by @var{tag} or @var{id}.  Delete the snapshot identified by @var{tag} or @var{id}.
 ETEXI  ETEXI
   
     { "singlestep", "s?", do_singlestep,      {
       "[on|off]", "run emulation in singlestep mode or switch to normal mode", },          .name       = "singlestep",
           .args_type  = "option:s?",
           .params     = "[on|off]",
           .help       = "run emulation in singlestep mode or switch to normal mode",
           .mhandler.cmd = do_singlestep,
       },
   
 STEXI  STEXI
 @item singlestep [off]  @item singlestep [off]
 Run the emulation in single step mode.  Run the emulation in single step mode.
 If called with option off, the emulation returns to normal mode.  If called with option off, the emulation returns to normal mode.
 ETEXI  ETEXI
   
     { "stop", "", do_stop,      {
       "", "stop emulation", },          .name       = "stop",
           .args_type  = "",
           .params     = "",
           .help       = "stop emulation",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_stop,
       },
   
 STEXI  STEXI
 @item stop  @item stop
 Stop emulation.  Stop emulation.
 ETEXI  ETEXI
   
     { "c|cont", "", do_cont,      {
       "", "resume emulation", },          .name       = "c|cont",
           .args_type  = "",
           .params     = "",
           .help       = "resume emulation",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_cont,
       },
   
 STEXI  STEXI
 @item c or cont  @item c or cont
 Resume emulation.  Resume emulation.
 ETEXI  ETEXI
   
     { "gdbserver", "s?", do_gdbserver,      {
       "[device]", "start gdbserver on given device (default 'tcp::1234'), stop with 'none'", },          .name       = "gdbserver",
           .args_type  = "device:s?",
           .params     = "[device]",
           .help       = "start gdbserver on given device (default 'tcp::1234'), stop with 'none'",
           .mhandler.cmd = do_gdbserver,
       },
   
 STEXI  STEXI
 @item gdbserver [@var{port}]  @item gdbserver [@var{port}]
 Start gdbserver session (default @var{port}=1234)  Start gdbserver session (default @var{port}=1234)
 ETEXI  ETEXI
   
     { "x", "/l", do_memory_dump,      {
       "/fmt addr", "virtual memory dump starting at 'addr'", },          .name       = "x",
           .args_type  = "fmt:/,addr:l",
           .params     = "/fmt addr",
           .help       = "virtual memory dump starting at 'addr'",
           .mhandler.cmd = do_memory_dump,
       },
   
 STEXI  STEXI
 @item x/fmt @var{addr}  @item x/fmt @var{addr}
 Virtual memory dump starting at @var{addr}.  Virtual memory dump starting at @var{addr}.
 ETEXI  ETEXI
   
     { "xp", "/l", do_physical_memory_dump,      {
       "/fmt addr", "physical memory dump starting at 'addr'", },          .name       = "xp",
           .args_type  = "fmt:/,addr:l",
           .params     = "/fmt addr",
           .help       = "physical memory dump starting at 'addr'",
           .mhandler.cmd = do_physical_memory_dump,
       },
   
 STEXI  STEXI
 @item xp /@var{fmt} @var{addr}  @item xp /@var{fmt} @var{addr}
 Physical memory dump starting at @var{addr}.  Physical memory dump starting at @var{addr}.
Line 291  Dump 80 16 bit values at the start of th Line 404  Dump 80 16 bit values at the start of th
 @end itemize  @end itemize
 ETEXI  ETEXI
   
     { "p|print", "/l", do_print,      {
       "/fmt expr", "print expression value (use $reg for CPU register access)", },          .name       = "p|print",
           .args_type  = "fmt:/,val:l",
           .params     = "/fmt expr",
           .help       = "print expression value (use $reg for CPU register access)",
           .mhandler.cmd = do_print,
       },
   
 STEXI  STEXI
 @item p or print/@var{fmt} @var{expr}  @item p or print/@var{fmt} @var{expr}
   
Line 300  Print expression value. Only the @var{fo Line 419  Print expression value. Only the @var{fo
 used.  used.
 ETEXI  ETEXI
   
     { "i", "/ii.", do_ioport_read,      {
       "/fmt addr", "I/O port read" },          .name       = "i",
           .args_type  = "fmt:/,addr:i,index:i.",
           .params     = "/fmt addr",
           .help       = "I/O port read",
           .mhandler.cmd = do_ioport_read,
       },
   
 STEXI  STEXI
 Read I/O port.  Read I/O port.
 ETEXI  ETEXI
   
     { "o", "/ii", do_ioport_write,      {
       "/fmt addr value", "I/O port write" },          .name       = "o",
           .args_type  = "fmt:/,addr:i,val:i",
           .params     = "/fmt addr value",
           .help       = "I/O port write",
           .mhandler.cmd = do_ioport_write,
       },
   
 STEXI  STEXI
 Write to I/O port.  Write to I/O port.
 ETEXI  ETEXI
   
     { "sendkey", "si?", do_sendkey,      {
       "keys [hold_ms]", "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)" },          .name       = "sendkey",
           .args_type  = "string:s,hold_time:i?",
           .params     = "keys [hold_ms]",
           .help       = "send keys to the VM (e.g. 'sendkey ctrl-alt-f1', default hold time=100 ms)",
           .mhandler.cmd = do_sendkey,
       },
   
 STEXI  STEXI
 @item sendkey @var{keys}  @item sendkey @var{keys}
   
Line 328  This command is useful to send keys that Line 465  This command is useful to send keys that
 intercepts at low level, such as @code{ctrl-alt-f1} in X Window.  intercepts at low level, such as @code{ctrl-alt-f1} in X Window.
 ETEXI  ETEXI
   
     { "system_reset", "", do_system_reset,      {
       "", "reset the system" },          .name       = "system_reset",
           .args_type  = "",
           .params     = "",
           .help       = "reset the system",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_system_reset,
       },
   
 STEXI  STEXI
 @item system_reset  @item system_reset
   
 Reset the system.  Reset the system.
 ETEXI  ETEXI
   
     { "system_powerdown", "", do_system_powerdown,      {
       "", "send system power down event" },          .name       = "system_powerdown",
           .args_type  = "",
           .params     = "",
           .help       = "send system power down event",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_system_powerdown,
       },
   
 STEXI  STEXI
 @item system_powerdown  @item system_powerdown
   
 Power down the system (if supported).  Power down the system (if supported).
 ETEXI  ETEXI
   
     { "sum", "ii", do_sum,      {
       "addr size", "compute the checksum of a memory region" },          .name       = "sum",
           .args_type  = "start:i,size:i",
           .params     = "addr size",
           .help       = "compute the checksum of a memory region",
           .mhandler.cmd = do_sum,
       },
   
 STEXI  STEXI
 @item sum @var{addr} @var{size}  @item sum @var{addr} @var{size}
   
 Compute the checksum of a memory region.  Compute the checksum of a memory region.
 ETEXI  ETEXI
   
     { "usb_add", "s", do_usb_add,      {
       "device", "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')" },          .name       = "usb_add",
           .args_type  = "devname:s",
           .params     = "device",
           .help       = "add USB device (e.g. 'host:bus.addr' or 'host:vendor_id:product_id')",
           .mhandler.cmd = do_usb_add,
       },
   
 STEXI  STEXI
 @item usb_add @var{devname}  @item usb_add @var{devname}
   
Line 361  Add the USB device @var{devname}.  For d Line 524  Add the USB device @var{devname}.  For d
 @ref{usb_devices}  @ref{usb_devices}
 ETEXI  ETEXI
   
     { "usb_del", "s", do_usb_del,      {
       "device", "remove USB device 'bus.addr'" },          .name       = "usb_del",
           .args_type  = "devname:s",
           .params     = "device",
           .help       = "remove USB device 'bus.addr'",
           .mhandler.cmd = do_usb_del,
       },
   
 STEXI  STEXI
 @item usb_del @var{devname}  @item usb_del @var{devname}
   
Line 371  hub. @var{devname} has the syntax @code{ Line 540  hub. @var{devname} has the syntax @code{
 command @code{info usb} to see the devices you can remove.  command @code{info usb} to see the devices you can remove.
 ETEXI  ETEXI
   
     { "cpu", "i", do_cpu_set,      {
       "index", "set the default CPU" },          .name       = "device_add",
           .args_type  = "config:s",
           .params     = "device",
           .help       = "add device, like -device on the command line",
           .mhandler.cmd = do_device_add,
       },
   
   STEXI
   @item device_add @var{config}
   
   Add device.
   ETEXI
   
       {
           .name       = "device_del",
           .args_type  = "id:s",
           .params     = "device",
           .help       = "remove device",
           .mhandler.cmd = do_device_del,
       },
   
   STEXI
   @item device_del @var{id}
   
   Remove device @var{id}.
   ETEXI
   
       {
           .name       = "cpu",
           .args_type  = "index:i",
           .params     = "index",
           .help       = "set the default CPU",
           .mhandler.cmd = do_cpu_set,
       },
   
 STEXI  STEXI
 Set the default CPU.  Set the default CPU.
 ETEXI  ETEXI
   
     { "mouse_move", "sss?", do_mouse_move,      {
       "dx dy [dz]", "send mouse move events" },          .name       = "mouse_move",
           .args_type  = "dx_str:s,dy_str:s,dz_str:s?",
           .params     = "dx dy [dz]",
           .help       = "send mouse move events",
           .mhandler.cmd = do_mouse_move,
       },
   
 STEXI  STEXI
 @item mouse_move @var{dx} @var{dy} [@var{dz}]  @item mouse_move @var{dx} @var{dy} [@var{dz}]
 Move the active mouse to the specified coordinates @var{dx} @var{dy}  Move the active mouse to the specified coordinates @var{dx} @var{dy}
 with optional scroll axis @var{dz}.  with optional scroll axis @var{dz}.
 ETEXI  ETEXI
   
     { "mouse_button", "i", do_mouse_button,      {
       "state", "change mouse button state (1=L, 2=M, 4=R)" },          .name       = "mouse_button",
           .args_type  = "button_state:i",
           .params     = "state",
           .help       = "change mouse button state (1=L, 2=M, 4=R)",
           .mhandler.cmd = do_mouse_button,
       },
   
 STEXI  STEXI
 @item mouse_button @var{val}  @item mouse_button @var{val}
 Change the active mouse button state @var{val} (1=L, 2=M, 4=R).  Change the active mouse button state @var{val} (1=L, 2=M, 4=R).
 ETEXI  ETEXI
   
     { "mouse_set", "i", do_mouse_set,      {
       "index", "set which mouse device receives events" },          .name       = "mouse_set",
           .args_type  = "index:i",
           .params     = "index",
           .help       = "set which mouse device receives events",
           .mhandler.cmd = do_mouse_set,
       },
   
 STEXI  STEXI
 @item mouse_set @var{index}  @item mouse_set @var{index}
 Set which mouse device receives events at given @var{index}, index  Set which mouse device receives events at given @var{index}, index
Line 404  info mice Line 625  info mice
 ETEXI  ETEXI
   
 #ifdef HAS_AUDIO  #ifdef HAS_AUDIO
     { "wavcapture", "si?i?i?", do_wav_capture,      {
       "path [frequency [bits [channels]]]",          .name       = "wavcapture",
       "capture audio to a wave file (default frequency=44100 bits=16 channels=2)" },          .args_type  = "path:F,freq:i?,bits:i?,nchannels:i?",
           .params     = "path [frequency [bits [channels]]]",
           .help       = "capture audio to a wave file (default frequency=44100 bits=16 channels=2)",
           .mhandler.cmd = do_wav_capture,
       },
 #endif  #endif
 STEXI  STEXI
 @item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]  @item wavcapture @var{filename} [@var{frequency} [@var{bits} [@var{channels}]]]
Line 422  Defaults: Line 647  Defaults:
 ETEXI  ETEXI
   
 #ifdef HAS_AUDIO  #ifdef HAS_AUDIO
     { "stopcapture", "i", do_stop_capture,      {
       "capture index", "stop capture" },          .name       = "stopcapture",
           .args_type  = "n:i",
           .params     = "capture index",
           .help       = "stop capture",
           .mhandler.cmd = do_stop_capture,
       },
 #endif  #endif
 STEXI  STEXI
 @item stopcapture @var{index}  @item stopcapture @var{index}
Line 433  info capture Line 663  info capture
 @end example  @end example
 ETEXI  ETEXI
   
     { "memsave", "lis", do_memory_save,      {
       "addr size file", "save to disk virtual memory dump starting at 'addr' of size 'size'", },          .name       = "memsave",
           .args_type  = "val:l,size:i,filename:s",
           .params     = "addr size file",
           .help       = "save to disk virtual memory dump starting at 'addr' of size 'size'",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_memory_save,
       },
   
 STEXI  STEXI
 @item memsave @var{addr} @var{size} @var{file}  @item memsave @var{addr} @var{size} @var{file}
 save to disk virtual memory dump starting at @var{addr} of size @var{size}.  save to disk virtual memory dump starting at @var{addr} of size @var{size}.
 ETEXI  ETEXI
   
     { "pmemsave", "lis", do_physical_memory_save,      {
       "addr size file", "save to disk physical memory dump starting at 'addr' of size 'size'", },          .name       = "pmemsave",
           .args_type  = "val:l,size:i,filename:s",
           .params     = "addr size file",
           .help       = "save to disk physical memory dump starting at 'addr' of size 'size'",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_physical_memory_save,
       },
   
 STEXI  STEXI
 @item pmemsave @var{addr} @var{size} @var{file}  @item pmemsave @var{addr} @var{size} @var{file}
 save to disk physical memory dump starting at @var{addr} of size @var{size}.  save to disk physical memory dump starting at @var{addr} of size @var{size}.
 ETEXI  ETEXI
   
     { "boot_set", "s", do_boot_set,      {
       "bootdevice", "define new values for the boot device list" },          .name       = "boot_set",
           .args_type  = "bootdevice:s",
           .params     = "bootdevice",
           .help       = "define new values for the boot device list",
           .mhandler.cmd = do_boot_set,
       },
   
 STEXI  STEXI
 @item boot_set @var{bootdevicelist}  @item boot_set @var{bootdevicelist}
   
Line 460  the same that can be specified in the @c Line 710  the same that can be specified in the @c
 ETEXI  ETEXI
   
 #if defined(TARGET_I386)  #if defined(TARGET_I386)
     { "nmi", "i", do_inject_nmi,      {
       "cpu", "inject an NMI on the given CPU", },          .name       = "nmi",
           .args_type  = "cpu_index:i",
           .params     = "cpu",
           .help       = "inject an NMI on the given CPU",
           .mhandler.cmd = do_inject_nmi,
       },
 #endif  #endif
 STEXI  STEXI
 @item nmi @var{cpu}  @item nmi @var{cpu}
 Inject an NMI on the given CPU (x86 only).  Inject an NMI on the given CPU (x86 only).
 ETEXI  ETEXI
   
     { "migrate", "-ds", do_migrate,      {
       "[-d] uri", "migrate to URI (using -d to not wait for completion)" },          .name       = "migrate",
           .args_type  = "detach:-d,blk:-b,inc:-i,uri:s",
           .params     = "[-d] [-b] [-i] uri",
           .help       = "migrate to URI (using -d to not wait for completion)"
                         "\n\t\t\t -b for migration without shared storage with"
                         " full copy of disk\n\t\t\t -i for migration without "
                         "shared storage with incremental copy of disk "
                         "(base image shared between src and destination)",
           .user_print = monitor_user_noop,        
           .mhandler.cmd_new = do_migrate,
       },
   
   
 STEXI  STEXI
 @item migrate [-d] @var{uri}  @item migrate [-d] [-b] [-i] @var{uri}
 Migrate to @var{uri} (using -d to not wait for completion).  Migrate to @var{uri} (using -d to not wait for completion).
           -b for migration with full copy of disk
           -i for migration with incremental copy of disk (base image is shared)
 ETEXI  ETEXI
   
     { "migrate_cancel", "", do_migrate_cancel,      {
       "", "cancel the current VM migration" },          .name       = "migrate_cancel",
           .args_type  = "",
           .params     = "",
           .help       = "cancel the current VM migration",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_migrate_cancel,
       },
   
 STEXI  STEXI
 @item migrate_cancel  @item migrate_cancel
 Cancel the current VM migration.  Cancel the current VM migration.
 ETEXI  ETEXI
   
     { "migrate_set_speed", "s", do_migrate_set_speed,      {
       "value", "set maximum speed (in bytes) for migrations" },          .name       = "migrate_set_speed",
           .args_type  = "value:s",
           .params     = "value",
           .help       = "set maximum speed (in bytes) for migrations",
           .mhandler.cmd = do_migrate_set_speed,
       },
   
 STEXI  STEXI
 @item migrate_set_speed @var{value}  @item migrate_set_speed @var{value}
 Set maximum speed to @var{value} (in bytes) for migrations.  Set maximum speed to @var{value} (in bytes) for migrations.
 ETEXI  ETEXI
   
     { "migrate_set_downtime", "s", do_migrate_set_downtime,      {
       "value", "set maximum tolerated downtime (in seconds) for migrations" },          .name       = "migrate_set_downtime",
           .args_type  = "value:s",
           .params     = "value",
           .help       = "set maximum tolerated downtime (in seconds) for migrations",
           .mhandler.cmd = do_migrate_set_downtime,
       },
   
 STEXI  STEXI
 @item migrate_set_downtime @var{second}  @item migrate_set_downtime @var{second}
Line 498  Set maximum tolerated downtime (in secon Line 785  Set maximum tolerated downtime (in secon
 ETEXI  ETEXI
   
 #if defined(TARGET_I386)  #if defined(TARGET_I386)
     { "drive_add", "ss", drive_hot_add, "[[<domain>:]<bus>:]<slot>\n"      {
                                          "[file=file][,if=type][,bus=n]\n"          .name       = "drive_add",
                                         "[,unit=m][,media=d][index=i]\n"          .args_type  = "pci_addr:s,opts:s",
                                         "[,cyls=c,heads=h,secs=s[,trans=t]]\n"          .params     = "[[<domain>:]<bus>:]<slot>\n"
                                         "[snapshot=on|off][,cache=on|off]",                        "[file=file][,if=type][,bus=n]\n"
                                         "add drive to PCI storage controller" },                        "[,unit=m][,media=d][index=i]\n"
                         "[,cyls=c,heads=h,secs=s[,trans=t]]\n"
                         "[snapshot=on|off][,cache=on|off]",
           .help       = "add drive to PCI storage controller",
           .mhandler.cmd = drive_hot_add,
       },
 #endif  #endif
   
 STEXI  STEXI
 @item drive_add  @item drive_add
 Add drive to PCI storage controller.  Add drive to PCI storage controller.
 ETEXI  ETEXI
   
 #if defined(TARGET_I386)  #if defined(TARGET_I386)
     { "pci_add", "sss?", pci_device_hot_add, "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...", "hot-add PCI device" },      {
           .name       = "pci_add",
           .args_type  = "pci_addr:s,type:s,opts:s?",
           .params     = "auto|[[<domain>:]<bus>:]<slot> nic|storage [[vlan=n][,macaddr=addr][,model=type]] [file=file][,if=type][,bus=nr]...",
           .help       = "hot-add PCI device",
           .user_print = pci_device_hot_add_print,
           .mhandler.cmd_new = pci_device_hot_add,
       },
 #endif  #endif
   
 STEXI  STEXI
 @item pci_add  @item pci_add
 Hot-add PCI device.  Hot-add PCI device.
 ETEXI  ETEXI
   
 #if defined(TARGET_I386)  #if defined(TARGET_I386)
     { "pci_del", "s", pci_device_hot_remove, "[[<domain>:]<bus>:]<slot>", "hot remove PCI device" },      {
           .name       = "pci_del",
           .args_type  = "pci_addr:s",
           .params     = "[[<domain>:]<bus>:]<slot>",
           .help       = "hot remove PCI device",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_pci_device_hot_remove,
       },
 #endif  #endif
   
 STEXI  STEXI
 @item pci_del  @item pci_del
 Hot remove PCI device.  Hot remove PCI device.
 ETEXI  ETEXI
   
     { "host_net_add", "ss?", net_host_device_add,      {
       "tap|user|socket|vde|dump [options]", "add host VLAN client" },          .name       = "host_net_add",
           .args_type  = "device:s,opts:s?",
           .params     = "tap|user|socket|vde|dump [options]",
           .help       = "add host VLAN client",
           .mhandler.cmd = net_host_device_add,
       },
   
 STEXI  STEXI
 @item host_net_add  @item host_net_add
 Add host VLAN client.  Add host VLAN client.
 ETEXI  ETEXI
   
     { "host_net_remove", "is", net_host_device_remove,      {
       "vlan_id name", "remove host VLAN client" },          .name       = "host_net_remove",
           .args_type  = "vlan_id:i,device:s",
           .params     = "vlan_id name",
           .help       = "remove host VLAN client",
           .mhandler.cmd = net_host_device_remove,
       },
   
 STEXI  STEXI
 @item host_net_remove  @item host_net_remove
 Remove host VLAN client.  Remove host VLAN client.
 ETEXI  ETEXI
   
 #ifdef CONFIG_SLIRP  #ifdef CONFIG_SLIRP
     { "hostfwd_add", "ss?s?", net_slirp_hostfwd_add,      {
       "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",          .name       = "hostfwd_add",
       "redirect TCP or UDP connections from host to guest (requires -net user)" },          .args_type  = "arg1:s,arg2:s?,arg3:s?",
     { "hostfwd_remove", "ss?s?", net_slirp_hostfwd_remove,          .params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
       "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",          .help       = "redirect TCP or UDP connections from host to guest (requires -net user)",
       "remove host-to-guest TCP or UDP redirection" },          .mhandler.cmd = net_slirp_hostfwd_add,
       },
   
       {
           .name       = "hostfwd_remove",
           .args_type  = "arg1:s,arg2:s?,arg3:s?",
           .params     = "[vlan_id name] [tcp|udp]:[hostaddr]:hostport",
           .help       = "remove host-to-guest TCP or UDP redirection",
           .mhandler.cmd = net_slirp_hostfwd_remove,
       },
   
 #endif  #endif
 STEXI  STEXI
 @item host_net_redir  @item host_net_redir
 Redirect TCP or UDP connections from host to guest (requires -net user).  Redirect TCP or UDP connections from host to guest (requires -net user).
 ETEXI  ETEXI
   
     { "balloon", "i", do_balloon,      {
       "target", "request VM to change it's memory allocation (in MB)" },          .name       = "balloon",
           .args_type  = "value:M",
           .params     = "target",
           .help       = "request VM to change it's memory allocation (in MB)",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_balloon,
       },
   
 STEXI  STEXI
 @item balloon @var{value}  @item balloon @var{value}
 Request VM to change its memory allocation to @var{value} (in MB).  Request VM to change its memory allocation to @var{value} (in MB).
 ETEXI  ETEXI
   
     { "set_link", "ss", do_set_link,      {
       "name up|down", "change the link status of a network adapter" },          .name       = "set_link",
           .args_type  = "name:s,up_or_down:s",
           .params     = "name up|down",
           .help       = "change the link status of a network adapter",
           .mhandler.cmd = do_set_link,
       },
   
 STEXI  STEXI
 @item set_link @var{name} [up|down]  @item set_link @var{name} [up|down]
 Set link @var{name} up or down.  Set link @var{name} up or down.
 ETEXI  ETEXI
   
     { "watchdog_action", "s", do_watchdog_action,      {
       "[reset|shutdown|poweroff|pause|debug|none]", "change watchdog action" },          .name       = "watchdog_action",
           .args_type  = "action:s",
           .params     = "[reset|shutdown|poweroff|pause|debug|none]",
           .help       = "change watchdog action",
           .mhandler.cmd = do_watchdog_action,
       },
   
 STEXI  STEXI
 @item watchdog_action  @item watchdog_action
 Change watchdog action.  Change watchdog action.
 ETEXI  ETEXI
   
     { "acl_show", "s", do_acl_show, "aclname",      {
       "list rules in the access control list" },          .name       = "acl_show",
           .args_type  = "aclname:s",
           .params     = "aclname",
           .help       = "list rules in the access control list",
           .mhandler.cmd = do_acl_show,
       },
   
 STEXI  STEXI
 @item acl_show @var{aclname}  @item acl_show @var{aclname}
 List all the matching rules in the access control list, and the default  List all the matching rules in the access control list, and the default
Line 584  policy. There are currently two named ac Line 940  policy. There are currently two named ac
 certificate distinguished name, and SASL username respectively.  certificate distinguished name, and SASL username respectively.
 ETEXI  ETEXI
   
     { "acl_policy", "ss", do_acl_policy, "aclname allow|deny",      {
       "set default access control list policy" },          .name       = "acl_policy",
           .args_type  = "aclname:s,policy:s",
           .params     = "aclname allow|deny",
           .help       = "set default access control list policy",
           .mhandler.cmd = do_acl_policy,
       },
   
 STEXI  STEXI
 @item acl_policy @var{aclname} @code{allow|deny}  @item acl_policy @var{aclname} @code{allow|deny}
 Set the default access control list policy, used in the event that  Set the default access control list policy, used in the event that
Line 593  none of the explicit rules match. The de Line 955  none of the explicit rules match. The de
 always @code{deny}.  always @code{deny}.
 ETEXI  ETEXI
   
     { "acl_add", "sssi?", do_acl_add, "aclname match allow|deny [index]",      {
       "add a match rule to the access control list" },          .name       = "acl_add",
           .args_type  = "aclname:s,match:s,policy:s,index:i?",
           .params     = "aclname match allow|deny [index]",
           .help       = "add a match rule to the access control list",
           .mhandler.cmd = do_acl_add,
       },
   
 STEXI  STEXI
 @item acl_allow @var{aclname} @var{match} @code{allow|deny} [@var{index}]  @item acl_allow @var{aclname} @var{match} @code{allow|deny} [@var{index}]
 Add a match rule to the access control list, allowing or denying access.  Add a match rule to the access control list, allowing or denying access.
Line 605  normally be appended to the end of the A Line 973  normally be appended to the end of the A
 earlier in the list if the optional @var{index} parameter is supplied.  earlier in the list if the optional @var{index} parameter is supplied.
 ETEXI  ETEXI
   
     { "acl_remove", "ss", do_acl_remove, "aclname match",      {
       "remove a match rule from the access control list" },          .name       = "acl_remove",
           .args_type  = "aclname:s,match:s",
           .params     = "aclname match",
           .help       = "remove a match rule from the access control list",
           .mhandler.cmd = do_acl_remove,
       },
   
 STEXI  STEXI
 @item acl_remove @var{aclname} @var{match}  @item acl_remove @var{aclname} @var{match}
 Remove the specified match rule from the access control list.  Remove the specified match rule from the access control list.
 ETEXI  ETEXI
   
     { "acl_reset", "s", do_acl_reset, "aclname",      {
       "reset the access control list" },          .name       = "acl_reset",
           .args_type  = "aclname:s",
           .params     = "aclname",
           .help       = "reset the access control list",
           .mhandler.cmd = do_acl_reset,
       },
   
 STEXI  STEXI
 @item acl_remove @var{aclname} @var{match}  @item acl_remove @var{aclname} @var{match}
 Remove all matches from the access control list, and set the default  Remove all matches from the access control list, and set the default
Line 621  policy back to @code{deny}. Line 1001  policy back to @code{deny}.
 ETEXI  ETEXI
   
 #if defined(TARGET_I386)  #if defined(TARGET_I386)
     { "mce", "iillll", do_inject_mce, "cpu bank status mcgstatus addr misc", "inject a MCE on the given CPU"},  
       {
           .name       = "mce",
           .args_type  = "cpu_index:i,bank:i,status:l,mcg_status:l,addr:l,misc:l",
           .params     = "cpu bank status mcgstatus addr misc",
           .help       = "inject a MCE on the given CPU",
           .mhandler.cmd = do_inject_mce,
       },
   
 #endif  #endif
 STEXI  STEXI
 @item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}  @item mce @var{cpu} @var{bank} @var{status} @var{mcgstatus} @var{addr} @var{misc}
 Inject an MCE on the given CPU (x86 only).  Inject an MCE on the given CPU (x86 only).
 ETEXI  ETEXI
   
     { "getfd", "s", do_getfd, "getfd name",      {
       "receive a file descriptor via SCM rights and assign it a name" },          .name       = "getfd",
           .args_type  = "fdname:s",
           .params     = "getfd name",
           .help       = "receive a file descriptor via SCM rights and assign it a name",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_getfd,
       },
   
 STEXI  STEXI
 @item getfd @var{fdname}  @item getfd @var{fdname}
 If a file descriptor is passed alongside this command using the SCM_RIGHTS  If a file descriptor is passed alongside this command using the SCM_RIGHTS
Line 637  mechanism on unix sockets, it is stored  Line 1032  mechanism on unix sockets, it is stored 
 later use by other monitor commands.  later use by other monitor commands.
 ETEXI  ETEXI
   
     { "closefd", "s", do_closefd, "closefd name",      {
       "close a file descriptor previously passed via SCM rights" },          .name       = "closefd",
           .args_type  = "fdname:s",
           .params     = "closefd name",
           .help       = "close a file descriptor previously passed via SCM rights",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_closefd,
       },
   
 STEXI  STEXI
 @item closefd @var{fdname}  @item closefd @var{fdname}
 Close the file descriptor previously assigned to @var{fdname} using the  Close the file descriptor previously assigned to @var{fdname} using the
Line 646  Close the file descriptor previously ass Line 1048  Close the file descriptor previously ass
 used by another monitor command.  used by another monitor command.
 ETEXI  ETEXI
   
       {
           .name       = "block_passwd",
           .args_type  = "device:B,password:s",
           .params     = "block_passwd device password",
           .help       = "set the password of encrypted block devices",
           .user_print = monitor_user_noop,
           .mhandler.cmd_new = do_block_set_passwd,
       },
   
   STEXI
   @item block_passwd @var{device} @var{password}
   Set the encrypted device @var{device} password to @var{password}
   ETEXI
   
 STEXI  STEXI
 @end table  @end table
 ETEXI  ETEXI

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2


unix.superglobalmegacorp.com