History | View | Annotate | Download (99.8 kB)
qemu-char: fix documentation for telnet+wait socket flags
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Reviewed-by: Laszlo Ersek <lersek@redhat.com>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
blockdev: add DriveBackup transaction
This patch adds a transactional version of the drive-backup QMP command.It allows atomic snapshots of multiple drives along with automaticcleanup if there is a failure to start one of the backup jobs.
Note that QMP events are emitted for block job completion/cancellation...
blockdev: add Abort transaction
The Abort action can be used to test QMP 'transaction' failure. Add itas the last action to exercise the .abort() and .cleanup() code pathsfor all previous actions.
Reviewed-by: Kevin Wolf <kwolf@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>...
block: add drive-backup QMP command
@drive-backup
Start a point-in-time copy of a block device to a new destination. Thestatus of ongoing drive-backup operations can be checked withquery-block-jobs where the BlockJobInfo.type field has the value 'backup'....
rdma: export throughput w/ MigrationStats QMP
This exposes throughput (in megabits/sec) through QMP.
Reviewed-by: Juan Quintela <quintela@redhat.com>Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Chegu Vinod <chegu_vinod@hp.com>Tested-by: Chegu Vinod <chegu_vinod@hp.com>...
rdma: introduce capability x-rdma-pin-all
This capability allows you to disable dynamic chunk registrationfor better throughput on high-performance links.
For example, using an 8GB RAM virtual machine with all 8GB of memory inactive use and the VM itself is completely idle using a 40 gbps infiniband link:...
qapi: lack of two commas in dict
Signed-off-by: Amos Kong <akong@redhat.com>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
build: drop TARGET_TYPE
Just use the TARGET_NAME free string.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Message-id: 1370349928-20419-6-git-send-email-pbonzini@redhat.comSigned-off-by: Peter Maydell <peter.maydell@linaro.org>
qmp: add ImageInfo in BlockDeviceInfo used by query-block
Now image info will be retrieved as an embbed json object insideBlockDeviceInfo, backing chain info and all related internal snapshotinfo can be got in the enhanced recursive structure of ImageInfo. New...
blockdev: Rename BlockdevAction -> TransactionAction
There's no reason to restrict transactions to operations related toblock devices, so rename the type now before schema introspection stopsus from doing so.
Also change the schema documentation of 'transaction' to not refer to...
chardev: Make the name of memory device consistent
Now we have memory char device, but the backend name of itis a little confusion. We actually register it by 'memory', butthe description in qemu-option, the name of open functionsand the new api backend called it 'ringbuf'. It should keep...
chardev: Make consistent with udp device for new qapi backend
When register and open a chardev udp, the backend name should be udpnot dgram, and we do not have backend dgram in the chardev list. Thispatch makes the new qapi udp backend consistent with the original...
target-i386: Add "feature-words" property to X86CPU
This property will be useful for libvirt, as libvirt already has logicbased on low-level feature bits (not feature names), so it will bereally easy to convert the current libvirt logic to something using the...
QMP: Add cpu-add command
Adds "cpu-add id=xxx" QMP command.
cpu-add's "id" argument is a CPU number in a range [0..max-cpus)
Example QMP command: > { "execute": "cpu-add", "arguments": { "id": 2 } } < { "return": {} }
Signed-off-by: Igor Mammedov <imammedo@redhat.com>...
add a new runstate: RUN_STATE_GUEST_PANICKED
The guest will be in this state when it is panicked.
Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>Reviewed-by: Markus Armbruster <armbru@redhat.com>Message-id: 0255f263ffdc2a3716f73e89098b96fd79a235b3.1366945969.git.hutao@cn.fujitsu.com...
monitor: introduce query-command-line-options
Libvirt has no way to probe if an option or property is supported,This patch introduces a new qmp command to query command lineoption information. hmp command isn't added because it's not needed.
Signed-off-by: Amos Kong <akong@redhat.com>...
Revert "New QMP command query-cpu-max and HMP command cpu_max"
This reverts commit 4d700430a20b3d53b7b15bc5f6666f7e570e3f2c as asked byLuiz. The patch has been obsoleted by extending MachineInfo structureby cpu-max field.
Signed-off-by: Michal Novotny <minovotn@redhat.com>...
qapi: use valid JSON in schema
Signed-off-by: Eric Blake <eblake@redhat.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
New cpu-max field in query-machines QMP command output
Alter the query-machines QMP command to output information aboutmaximum number of CPUs for each machine type with default valueset to 1 in case the number of max_cpus is not set.
qapi schema: add AcpiTableOptions
Signed-off-by: Laszlo Ersek <lersek@redhat.com>Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>Message-id: 1363821803-3380-5-git-send-email-lersek@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
help: add docs for missing 'queues' option of tap
Cc: Markus Armbruster <armbru@redhat.com>Cc: qemu-stable@nongnu.orgSigned-off-by: Jason Wang <jasowang@redhat.com>Message-id: 1361545072-30426-1-git-send-email-jasowang@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
Merge remote-tracking branch 'mst/tags/for_anthony' into staging
virtio,pci,qom
Work by Alex to support VGA assignment,pci and virtio fixes by Stefan, Jason and myself, and anew qmp event for hotplug support by myself.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>...
Merge remote-tracking branch 'quintela/migration.next' into staging
migration: do not sent zero pages in bulk stage
during bulk stage of ram migration if a page is azero page do not send it at all.the memory at the destination reads as zero anyway.
even if there is an madvise with QEMU_MADV_DONTNEEDat the target upon receipt of a zero page I have observed...
QMP: Remove duplicate TPM type from query-tpm
Signed-off-by: Corey Bryant <coreyb@linux.vnet.ibm.com>Reviewed-by: Eric Blake <eblake@redhat.com>Reviewed-by: Markus Armbruster <armbru@redhat.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
New QMP command query-cpu-max and HMP command cpu_max
These commands return the maximum number of CPUs supported by thecurrently running emulator instance, as defined in its QEMUMachinestruct.
Signed-off-by: Michal Novotny <minovotn@redhat.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Add top level changes for moxie
Signed-off-by: Anthony Green <green@moxielogic.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
qdev: DEVICE_DELETED event
libvirt has a long-standing bug: when removing the device,it can request removal but does not know when theremoval completes. Add an event so we can fix this in a robust way.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
chardev: add msmouse support to qapi
This patch adds 'msmouse' support to qapi and also switches overthe msmouse chardev initialization to the new qapi code path.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
chardev: add braille support to qapi
This patch adds 'braille' support to qapi and also switches overthe braille chardev initialization to the new qapi code path.
chardev: add stdio support to qapi
This patch adds 'stdio' support to qapi and also switches over thestdio chardev initialization to the new qapi code path.
chardev: add console support to qapi
This patch adds 'console' support to qapi and also switches over theconsole chardev initialization to the new qapi code path.
chardev: add pipe support to qapi
This patch adds 'pipe' support to qapi and also switches over thepipe chardev initialization to the new qapi code path.
chardev: add spice support to qapi
This patch adds 'spicevmc' and 'spiceport' support to qapi and alsoswitches over the spice chardev initialization to the new qapi codepath.
chardev: add vc support to qapi
This patch adds 'vc' support to qapi and also switches over thevc chardev initialization to the new qapi code path.
chardev: add memory (ringbuf) support to qapi
This patch adds 'memory' support to qapi and also switches overthe memory chardev initialization to the new qapi code path.
chardev: add udp support to qapi
This patch adds 'udp' support to qapi.
chardev: add mux chardev support to qapi
This adds mux chardev support to the qapi and also makes the qapi-basedchardev creation path handle the "mux=on" option correctly.
Support for TPM command line options
This patch adds support for TPM command line options.The command line options supported here are
./qemu-... -tpmdev passthrough,path=<path to TPM device>,id=<id> -device tpm-tis,tpmdev=<id>,id=<other id>...
qemu-img: add compressed clusters to BlockFragInfo
Show how many clusters are compressed. This can be used to monitor howmany compressed clusters remain and whether to recompress the image.
Suggested-by: Cole Robinson <crobinso@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
qemu-img: add json output option to the check command
This option --output=[human|json] makes qemu-img check output a humanor JSON representation at the choice of the user.
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>...
help: add docs for multiqueue tap options
Cc: Markus Armbruster <armbru@redhat.com>Cc: Jason Wang <jasowang@redhat.com>Signed-off-by: Jason Wang <jasowang@redhat.com>Message-id: 1361354641-51969-1-git-send-email-jasowang@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
qapi: Flatten away ChardevPort
Simplifies the schema and the code.
QMP command
{ "execute" : "chardev-add", "arguments" : { "id" : "ser0", "backend" : { "type" : "port", "data" : { "type": "serial",...
qapi: Improve chardev-add documentation
Signed-off-by: Markus Armbruster <armbru@redhat.com>Message-id: 1360602348-4727-1-git-send-email-armbru@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
qemu-char: Saner naming of memchar stuff & doc fixes
New device, has never been released, so we can still improve thingswithout worrying about compatibility.
Naming is a mess. The code calls the device driver CirMemCharDriver,the public API calls it "memory", "memchardev", or "memchar", and the...
qmp: Fix design bug and read beyond buffer in memchar-write
Command memchar-write takes data and size parameter. Begs thequestion what happens when data doesn't match size.
With format base64, qmp_memchar_write() copies the full data argument,regardless of size argument....
qmp: Clean up design of memchar-read
The data returned has a well-defined size, which makes the sizereturned along with it redundant at best. Drop it.
Signed-off-by: Markus Armbruster <armbru@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
qmp: Use generic errors in memchar-read, memchar-write
New errors should be generic unless there's a real use case for richerrors.
tap: multiqueue support
Recently, linux support multiqueue tap which could let userspace call TUNSETIFFfor a signle device many times to create multiple file descriptors asindependent queues. User could also enable/disabe a specific queue throughTUNSETQUEUE....
Merge remote-tracking branch 'kwolf/for-anthony' into staging
block: allow customizing the granularity of the dirty bitmap
Reviewed-by: Eric Blake <eblake@redhat.com>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
mirror: allow customizing the granularity
The desired granularity may be very different depending on the kind ofoperation (e.g. continuous replication vs. collapse-to-raw) and whetherthe VM is expected to perform lots of I/O while mirroring is in progress....
mirror: add buf-size argument to drive-mirror
This makes sense when the next commit starts using the extra buffer spaceto perform many I/O operations asynchronously.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
QAPI: Introduce memchar-read QMP command
Signed-off-by: Lei Li <lilei@linux.vnet.ibm.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
QAPI: Introduce memchar-write QMP command
balloon: drop old stats code & API
Next commit will re-enable balloon stats with a different interface, butthis old code conflicts with it. Let's drop it.
It's important to note that the QMP and HMP interfaces are also droppedby this commit. That shouldn't be a problem though, because:...
chardev: add qmp hotplug commands, with null chardev support
Add chardev-add and chardev-remove qmp commands. Hotplugginga null chardev is supported for now, more will be added later.
chardev: add file chardev support to chardev-add (qmp)
Add support for file chardevs. Output file is mandatory,input file is optional.
chardev: add serial chardev support to chardev-add (qmp)
Similar to file, except that no separate in/out files are supportedbecause it's pointless for direct device access. Also the specialtty ioctl hooks (pass through linespeed settings etc) are activated...
chardev: add parallel chardev support to chardev-add (qmp)
Also alias the old parport name to parallel for -chardev.
chardev: add socket chardev support to chardev-add (qmp)
qemu_chr_open_socket is split into two functions. All initializationafter creating the socket file handler is split away into the newqemu_chr_open_socket_fd function.
chr->filename doesn't get filled from QemuOpts any more. Qemu gathers...
chardev: add pty chardev support to chardev-add (qmp)
The ptsname is returned directly, so there is no need touse query-chardev to figure the pty device path.
slirp: Add domain-search option to slirp's DHCP server
This patch will allow the user to include the domain-search option inreplies from the built-in DHCP server. The domain suffixes can bespecified by adding dnssearch= entries to the "-net user" parameter....
Merge branch 'queue/qmp' of git://repo.or.cz/qemu/qmp-unstable
qmp: handle stop/cont in INMIGRATE state
Right now, stop followed by an incoming migration will let thevirtual machine start. cont before an incoming migration insteadwill fail.
This is bad because the actual behavior is not predictable; it isracy with respect to the start of the incoming migration. That's...
mirror: add support for on-source-error/on-target-error
Error management is important for mirroring; otherwise, an error on thetarget (even something as "innocent" as ENOSPC) requires to start againwith a full copy. Similar to on_read_error/on_write_error, two separate...
qmp: add drive-mirror command
This adds the monitor commands that start the mirroring job.
monitor: Allow add-fd to any specified fd set
The first call to add an fd to an fd set was previously notallowed to choose the fd set ID. The ID was generated asthe first available and ensuing calls could add more fds byspecifying the fd set ID. This change allows users to...
block: export dirty bitmap information in query-block
block: add block-job-complete
While streaming can be dropped as soon as it progressed through the wholeimage, mirroring needs to be completed manually for two reasons: 1) so thatmanagement knows exactly when the VM switches to the target; 2) becausefor other use cases such as replication, we may leave the operation running...
block: introduce BLOCK_JOB_READY event
Even for jobs that need to be manually completed, management may wantto take care itself of the completion, not requiring the user to issuea command to terminate the job. In this case we want to avoid thatthey poll us continuously, waiting for completion to become available....
mirror: introduce mirror job
This patch adds the implementation of a new job that mirrors a disk toa new image while letting the guest continue using the old image.The target is treated as a "black box" and data is copied from thesource to the target in the background. This can be used for several...
qmp: add NBD server commands
Adding an NBD server inside QEMU is trivial, since all the logic isin nbd.c and can be shared easily between qemu-nbd and QEMU itself.The main difference is that qemu-nbd serves a single unnamed export,while QEMU serves named exports....
qapi: add socket address types
Acked-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
migration: print total downtime for final phase of migration
Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Orit Wasserman <owasserm@redhat.com>
migration: print expected downtime in info migrate
migration: Add dirty_pages_rate to query migrate output
It indicates how many pages were dirtied during the last second.
Merge remote-tracking branch 'sstabellini/xen-2012-10-03' into staging
QMP, Introduce xen-set-global-dirty-log command.
This command is used during a migration of a guest under Xen. It callsmemory_global_dirty_log_start or memory_global_dirty_log_stop according to theargument pass to the command.
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>...
block: introduce block job error
The following behaviors are possible:
'report': The behavior is the same as in 1.1. An I/O error,respectively during a read or a write, will complete the job immediatelywith an error code.
'ignore': An I/O error, respectively during a read or a write, will be...
stream: add on-error argument
This patch adds support for error management to streaming.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
iostatus: move BlockdevOnError declaration to QAPI
This will let block-stream reuse the enum. Places that used the enumsare renamed accordingly.
qmp: add 'busy' member to BlockJobInfo
Because pausing a job is asynchronous, we need to know whether it hascompleted. This is described by the "busy" field of BlockJob; copy itto BlockJobInfo.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>...
block: add support for job pause/resume
Job pausing reuses the existing support for cancellable sleeps. A pausehappens at the next sleeping point and lasts until the coroutine isre-entered explicitly. Cancellation was already doing a forced resume,so implement it explicitly in terms of resume....
qmp: add block-job-pause and block-job-resume
Add QMP commands matching the functionality.
Paused jobs cannot be canceled without first resuming them. Thisensures that I/O errors are never missed by management. However, anoptional force argument can be specified to allow that....
QAPI: add command for live block commit, 'block-commit'
The command for live block commit is added, which has the followingarguments:
device: the block device to perform the commit on (mandatory)base: the base image to commit into; optional (if not specified,...
block: live snapshot documentation tweaks
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
qmp: qmp_send_key(): accept key codes in hex
Before the qapi conversion, the sendkey command could be used tosend key codes in hex directly to the guest. In HMP, this wouldbe like:
(qemu) sendkey 0xdc
However, the qapi conversion broke this, as it only supports sending...
qmp: dump-guest-memory: improve schema doc (again)
o Add a note about memory allocation with paging=true o Fix indentation
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Reviewed-by: Markus Armbruster <armbru@redhat.com>
qapi: convert add_client
Also fixes a few issues while there:
1. The fd returned by monitor_get_fd() leaks in most error conditions 2. monitor_get_fd() return value is not checked. Best case we get an error that is not correctly reported, worse case one of the...
qapi: Fix enumeration typo error
Signed-off-by: Lei Li <lilei@linux.vnet.ibm.com>Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
qapi: Add SnapshotInfo and ImageInfo.
Signed-off-by: Benoit Canet <benoit@irqsave.net>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Merge branch 'spice.v59' of git://anongit.freedesktop.org/spice/qemu
qapi: convert sendkey
Convert 'sendkey' to use QAPI.
QAPI passes key's index of mapping table to qmp_send_key(),not keycode. So we use help functions to convert key/code toindex of key_defs, and 'index' will be converted to 'keycode'inside qmp_send_key()....
qapi: convert screendump
Next commits will update devices to propagate errors.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
qapi: add the QKeyCode enum
key_defs[] in monitor.c is a mapping table of keys and keycodes,this patch added a QKeyCode enum. Key's index in the enmu is sameas keycode's index in key_defs[].
Signed-off-by: Amos Kong <akong@redhat.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
spice: add 'migrated' flag to spice info
The flag is 'true' when spice migration has completed on the src side.It is needed for a case where libvirt dies before migration completesand it misses the event QEVENT_SPICE_MIGRATE_COMPLETED.When libvirt is restored and queries the migration status, it also needs...