- 26 6月, 2015 1 次提交
-
-
由 Peter Krempa 提交于
Now that qemuMonitorGetAllBlockStatsInfo collects also wr_highest_offset the whole function can be killed.
-
- 19 6月, 2015 3 次提交
-
-
由 Jiri Denemark 提交于
QEMU_CAPS_SEAMLESS_MIGRATION capability says QEMU supports SPICE_MIGRATE_COMPLETED event. Thus we can just drop all code which polls query-spice and replace it with waiting for the event. Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Jiri Denemark 提交于
Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Jiri Denemark 提交于
"query-block-jobs" QMP command returns all running block jobs at once, while qemuMonitorBlockJobInfo would only report one. This is not very nice in case we need to check several block jobs. This patch refactors the monitor code to always parse all block jobs and store them in a hash. Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
- 15 6月, 2015 1 次提交
-
-
由 Boris Fiuczynski 提交于
The search for the memory balloon driver object is extended by a second known name "virtio-balloon-ccw" in support for virtio-ccw. Signed-off-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com> Reviewed-by: NDaniel Hansel <daniel.hansel@linux.vnet.ibm.com> Reviewed-by: NEric Farman <farman@linux.vnet.ibm.com> Reviewed-by: NStefan Zimmermann <stzi@linux.vnet.ibm.com>
-
- 05 6月, 2015 5 次提交
-
-
由 Ján Tomko 提交于
We were effectively ignoring its errors anyway.
-
由 Ján Tomko 提交于
The monitor code does not hold the virDomainObjPtr lock and should not access the defitinion.
-
由 Ján Tomko 提交于
All the callers use "/" anyway.
-
由 Ján Tomko 提交于
When traversing through the QOM tree, we're looking for a link to a device, e.g.: link<virtio-balloon-pci> Introduce a helper that will format the link name at the start, instead of doing it every time while recursing through the tree.
-
由 Ján Tomko 提交于
This function is specific to the JSON monitor.
-
- 03 6月, 2015 2 次提交
-
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
Document the top level function rather than both bottom level ones. It makes looking the docs up quicker.
-
- 28 4月, 2015 3 次提交
-
-
由 Zhang Bo 提交于
It would be used in qemumonitorjsontest, thus we make it non-static. Signed-off-by: NZhang Bo <oscar.zhangbo@huawei.com> Signed-off-by: NZhou Yimin <zhouyimin@huawei.com>
-
由 John Ferlan 提交于
Replace with just VIR_FREE.
-
由 John Ferlan 提交于
Rather than have a separate routine to parse the alias of an iothread returned from qemu in order to get the iothread_id value, parse the alias when returning and just return the iothread_id in qemuMonitorIOThreadInfoPtr This set of patches removes the function, changes the "char *name" to "unsigned int" and handles all the fallout.
-
- 16 4月, 2015 1 次提交
-
-
由 Peter Krempa 提交于
Among all the monitor APIs some where checking if mon is NULL and some were not. Since it's possible to have mon equal to NULL in case a second call is attempted once entered the monitor. This requires that every single API checks for the monitor. This patch adds a macro that helps checking the state of the monitor and either refactors existing checking code to use the macro or adds it in case it was missing.
-
- 15 4月, 2015 6 次提交
-
-
由 Peter Krempa 提交于
Commit f6563bc3 introduced HMP impl of the function (so that a different uglier function could be removed). Before the HMP code is called there's a leftover check that the monitor is JSON which inhibits the code from working.
-
由 Peter Krempa 提交于
Add the attribute and remove the check.
-
由 Peter Krempa 提交于
Quite a lot places set the 'ret' variable just once right before returning it's value. Remove such usage.
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
Fix line spacing between functions, ensure that function return type is on a separate line and reflow arguments for VIR_DEBUG statements.
-
- 14 4月, 2015 3 次提交
-
-
由 Peter Krempa 提交于
Since it now handles only block pull code paths we can refactor it and remove tons of cruft.
-
由 Peter Krempa 提交于
Sacrifice a few lines of code in favor of the code being more readable.
-
由 Peter Krempa 提交于
qemuDomainBlockJobImpl become an unmaintainable mess over the years of adding new stuff to it. This patch starts splitting up individual functions from it until it can be killed entirely. In bulk this will add lines of code rather than delete them but it will be traded for maintainability.
-
- 09 4月, 2015 1 次提交
-
-
由 Peter Krempa 提交于
There are two leftover unused variables. Remove them and clean up the fallout of the change.
-
- 26 3月, 2015 1 次提交
-
-
由 Ján Tomko 提交于
It only deals with a single thread.
-
- 23 3月, 2015 2 次提交
-
-
由 Peter Krempa 提交于
When using 'dimm' memory devices with qemu, some of the information like the slot number and base address need to be reloaded from qemu after process start so that it reflects the actual state. The state then allows to use memory devices across migrations.
-
由 Peter Krempa 提交于
The function comment states that @props is always consumed, even on failure. This was not true with the failure if the monitor is not using QMP.
-
- 19 3月, 2015 1 次提交
-
-
由 Eric Blake 提交于
In qemu 2.3, the migration status will include 'cancelling' in the window between when an asynchronous cancel has been requested and when the migration is actually halted. Previously, qemu hid this state and reported 'active'. Libvirt manages the sequence okay even when the string is unrecognized (that is, it will report an unknown state: Migration: [ 69 %]^Cerror: internal error: unexpected migration status in cancelling. but the migration is still cancelled), but recognizing the string makes for a smoother user experience. * src/qemu/qemu_monitor.h (QEMU_MONITOR_MIGRATION_STATUS_CANCELLING): Add enum. * src/qemu/qemu_monitor.c (qemuMonitorMigrationStatus): Map it. * src/qemu/qemu_migration.c (qemuMigrationUpdateJobStatus): Adjust clients. * src/qemu/qemu_monitor_json.c (qemuMonitorJSONGetMigrationStatusReply): Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
- 18 3月, 2015 1 次提交
-
-
由 Eric Blake 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=1199182 documents that after a series of disk snapshots into existing destination images, followed by active commits of the top image, it is possible for qemu 2.2 and earlier to end up tracking a different name for the image than what it would have had when opening the chain afresh. That is, when starting with the chain 'a <- b <- c', the name associated with 'b' is how it was spelled in the metadata of 'c', but when starting with 'a', taking two snapshots into 'a <- b <- c', then committing 'c' back into 'b', the name associated with 'b' is now the name used when taking the first snapshot. Sadly, older qemu doesn't know how to treat different spellings of the same filename as identical files (it uses strcmp() instead of checking for the same inode), which means libvirt's attempt to commit an image using solely the names learned from qcow2 metadata fails with a cryptic: error: internal error: unable to execute QEMU command 'block-commit': Top image file /tmp/images/c/../b/b not found even though the file exists. Trying to teach libvirt the rules on which name qemu will expect is not worth the effort (besides, we'd have to remember it across libvirtd restarts, and track whether a file was opened via metadata or via snapshot creation for a given qemu process); it is easier to just always directly ask qemu what string it expects to see in the first place. As a safety valve, we validate that any name returned by qemu still maps to the same local file as we have tracked it, so that a compromised qemu cannot accidentally cause us to act on an incorrect file. * src/qemu/qemu_monitor.h (qemuMonitorDiskNameLookup): New prototype. * src/qemu/qemu_monitor_json.h (qemuMonitorJSONDiskNameLookup): Likewise. * src/qemu/qemu_monitor.c (qemuMonitorDiskNameLookup): New function. * src/qemu/qemu_monitor_json.c (qemuMonitorJSONDiskNameLookup) (qemuMonitorJSONDiskNameLookupOne): Likewise. * src/qemu/qemu_driver.c (qemuDomainBlockCommit) (qemuDomainBlockJobImpl): Use it. Signed-off-by: NEric Blake <eblake@redhat.com>
-
- 17 3月, 2015 1 次提交
-
-
由 Martin Kletzander 提交于
In order not to leave old error messages set, this patch refactors the code so the error is reported only when acted upon. The only such place already rewrites any error, so cleaning up all the error reporting in qemuMonitorSetMemoryStatsPeriod() is enough. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
- 11 3月, 2015 5 次提交
-
-
由 Peter Krempa 提交于
The functions and their QMP and HMP implementations are no longer needed since everything is now done via the *AllStats functions.
-
由 Peter Krempa 提交于
Our virDomainBlockStatsFlags API uses the old approach where, when it's called without the typed parameter array, returns the count of parameters supported by qemu. The supported parameter count is obtained via separate monitor calls which is a waste since we can calculate it when gathering the data. This patch adds code to the qemuMonitorGetAllBlockStatsInfo workers that allows to track the count of supported fields reported by qemu and will allow to remove the old duplicate code.
-
由 Peter Krempa 提交于
Add a different version of parser for "info blockstats" that basically parses the same information as the existing copy of the function. This will allow us to remove the single device version qemuMonitorGetBlockStatsInfo in the future. The new implementation uses few new helpers so it should be more understandable and provides a test case to verify that it works.
-
由 Peter Krempa 提交于
Allocate the hash table in the monitor wrapper function instead of the worker itself so that the text monitor impl that will be added in the next patch doesn't have to duplicate it.
-
由 Peter Krempa 提交于
The error count statistic is not supported by qemu, so there's no need to pass the variables around if the result is ignored anyways.
-
- 24 2月, 2015 1 次提交
-
-
由 Pavel Hrdina 提交于
In commit cc41c648 I've re-factored qemuMonitorFindBalloonObjectPath, but missed that there is a memory leak. The "nextpath" variable is overwritten while looping in for cycle and we have to free it before next cycle. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
- 14 1月, 2015 2 次提交
-
-
由 Pavel Hrdina 提交于
QEMU internally updates the size of video memory if the domain XML had provided too low memory size or there are some dependencies for a QXL devices 'vgamem' and 'ram' size. We need to know about the changes and store them into the status XML to not break migration or managedsave through different libvirt versions. The values would be loaded only if the "vgamem_mb" property exists for the device. The presence of the "vgamem_mb" also tells that the "ram_size" and "vram_size" exists for QXL devices. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
The search is done recursively only through QOM object that has a type prefixed with "child<" as this indicate that the QOM is a parent for other QOM objects. The usage is that you give known device name with starting path where to search. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-