[libvirt] [PATCH 0/2] Fix VIR_TEST_REGENERATE_OUTPUT in tests
by Ján Tomko
Instead of the proper solution of moving all the host-changing
stuff out of qemuBuildCommandLine, separate one helper
for easier mocking.
Ján Tomko (2):
qemuExecuteEthernetScript: move to util
qemuxml2argvtest: do not mock virCommand
src/libvirt_private.syms | 1 +
src/qemu/qemu_interface.c | 29 +----------------------------
src/util/virnetdev.c | 29 +++++++++++++++++++++++++++++
src/util/virnetdev.h | 2 ++
tests/qemuxml2argvmock.c | 7 ++-----
5 files changed, 35 insertions(+), 33 deletions(-)
--
2.7.3
9 years
[libvirt] [PATCH] tests: Fix VIR_TEST_REGENERATE_OUTPUT
by Cole Robinson
commit 950a90d489 mocked some virCommand handling for the qemu tests,
but we were using that in the test suite to call test-wrap-argv.pl for
regenerating test output.
Switch the generator code to just use system() instead
---
tests/testutils.c | 19 +++++--------------
1 file changed, 5 insertions(+), 14 deletions(-)
diff --git a/tests/testutils.c b/tests/testutils.c
index a0ce4b6..4f3e67b 100644
--- a/tests/testutils.c
+++ b/tests/testutils.c
@@ -434,24 +434,15 @@ virTestRewrapFile(const char *filename)
{
int ret = -1;
char *outbuf = NULL;
- char *script = NULL;
- virCommandPtr cmd = NULL;
+ char *cmd = NULL;
- if (virAsprintf(&script, "%s/test-wrap-argv.pl", abs_srcdir) < 0)
+ if (virAsprintf(&cmd, "echo \"$(%s/test-wrap-argv.pl %s)\" > %s",
+ abs_srcdir, filename, filename) < 0)
goto cleanup;
- cmd = virCommandNewArgList(script, filename, NULL);
- virCommandSetOutputBuffer(cmd, &outbuf);
- if (virCommandRun(cmd, NULL) < 0)
- goto cleanup;
-
- if (virFileWriteStr(filename, outbuf, 0666) < 0)
- goto cleanup;
-
- ret = 0;
+ ret = system(cmd);
cleanup:
- VIR_FREE(script);
- virCommandFree(cmd);
+ VIR_FREE(cmd);
VIR_FREE(outbuf);
return ret;
}
--
2.7.3
9 years
[libvirt] [PATCH 0/7] Add notification for memory hot-unplug failure
by Peter Krempa
Add a new libvirt event VIR_DOMAIN_EVENT_ID_DEVICE_REMOVAL_FAILED that will
handle failure to unplug a device if we are certain that it will not be unplugged
and wire up the ACPI_DEVICE_OST qemu event that is emitted on memory hotunplug
failure so that the event is propagated and the API fails in such case.
Along with that a few refactors were necessary.
Peter Krempa (7):
qemu: hotplug: Properly handle errors in
qemuDomainWaitForDeviceRemoval
qemu: hotplug: Refactor semantics of qemuDomainWaitForDeviceRemoval
qemu: Use domain condition for device removal singalling
qemu: hotplug: Add support for signalling device unplug failure
Add VIR_DOMAIN_EVENT_ID_DEVICE_REMOVAL_FAILED event
qemu: monitor: Add support for ACPI_DEVICE_OST event handling
qemu: process: Wire up ACPI OST events to notify users of failed
memory unplug
daemon/remote.c | 36 +++++++++++++
include/libvirt/libvirt-domain.h | 21 ++++++++
src/conf/domain_event.c | 84 ++++++++++++++++++++++++++++++
src/conf/domain_event.h | 7 +++
src/libvirt_private.syms | 2 +
src/qemu/qemu_domain.c | 4 --
src/qemu/qemu_domain.h | 18 ++++++-
src/qemu/qemu_hotplug.c | 110 +++++++++++++++++----------------------
src/qemu/qemu_hotplug.h | 3 +-
src/qemu/qemu_monitor.c | 19 +++++++
src/qemu/qemu_monitor.h | 18 +++++++
src/qemu/qemu_monitor_json.c | 39 ++++++++++++++
src/qemu/qemu_process.c | 71 ++++++++++++++++++++++++-
src/remote/remote_driver.c | 30 +++++++++++
src/remote/remote_protocol.x | 14 ++++-
src/remote_protocol-structs | 6 +++
tools/virsh-domain.c | 18 +++++++
17 files changed, 428 insertions(+), 72 deletions(-)
--
2.8.0
9 years
[libvirt] [PATCH 0/4] Test cleanups
by Ján Tomko
Noticed these while I was trying to look for an easy solution
to the VIR_TEST_REGENERATE_OUTPUT problem.
Ján Tomko (4):
drop qemuBuildCommandLineCallbacks
tests: clean up includes
qemuxml2argvtest: drop FLAG_EXPECT_ERROR
qemu: assign addresses before aliases
src/qemu/qemu_command.c | 35 +++++++++++------------------------
src/qemu/qemu_command.h | 18 ++----------------
src/qemu/qemu_hotplug.c | 3 +--
src/qemu/qemu_process.c | 29 ++++++++++++++---------------
tests/qemuxml2argvtest.c | 35 ++++++++++-------------------------
tests/qemuxml2xmltest.c | 2 +-
tests/testutilsqemu.c | 19 -------------------
tests/testutilsqemu.h | 3 +--
8 files changed, 40 insertions(+), 104 deletions(-)
--
2.7.3
9 years
[libvirt] backport politics to redhat/centos
by Vasiliy Tolstov
Hi! I'm need to use CentOS for some project and i want to not modify
all my stuff (i'm use plain ethernet devices with bird routing
daemon).
CentOS have libvirt 1.2.17, does redhat in near feature want to
backport my ethernet changes to main branches or not?
Sorry for my questions.
--
Vasiliy Tolstov,
e-mail: v.tolstov(a)selfip.ru
9 years
[libvirt] [PATCH 00/18] cleanup of graphics code
by Pavel Hrdina
Pavel Hrdina (18):
tests: remove unwanted VIR_FREE of spice and vnc default listen
docs: rewrite graphics XML documentation
domain_conf: introduce virDomainGraphicsListensParseXML
domain_conf: cleanup virDomainGraphicsListensParseXML
domain_conf: split graphics xml parser into multiple functions
domain_conf: cleanup error paths for graphics parser
domain_conf: introduce virDomainGraphicsListenAddAddress
domain_conf: introduce virDomainGraphicsListenAddNetwork
domain_conf: remove unused virDomainGraphicsListenSetType
domain_conf: cleanup virDomainGraphicsGetListen
use virDomainGraphicsGetListen instead of the other getters
domain_conf: cleanup virDomainGraphicsListenDefParseXML
domain_conf: remove unused virDomainGraphicsListenGet*
domain_conf: call ...ListensParseXML only for appropriate graphics
qemu_process: generate vnc unix socket in qemuProcessPrepareDomain
qemu_process: move listen code out of qemuProcessSetupGraphics
domain_conf: introduce virDomainGraphicsListenClear
qemu_domain: remove all listens if vncAutoUnixSocket is enabled
docs/formatdomain.html.in | 351 +++---
src/conf/domain_conf.c | 1163 ++++++++++----------
src/conf/domain_conf.h | 24 +-
src/libvirt_private.syms | 10 +-
src/libxl/libxl_conf.c | 15 +-
src/qemu/qemu_command.c | 120 +-
src/qemu/qemu_command.h | 3 +-
src/qemu/qemu_domain.c | 10 +
src/qemu/qemu_migration.c | 9 +-
src/qemu/qemu_parse_command.c | 4 +-
src/qemu/qemu_process.c | 69 +-
src/vbox/vbox_common.c | 14 +-
src/vmx/vmx.c | 9 +-
src/vz/vz_sdk.c | 11 +-
src/xenconfig/xen_common.c | 28 +-
src/xenconfig/xen_sxpr.c | 20 +-
src/xenconfig/xen_xl.c | 12 +-
.../qemuxml2argv-graphics-spice-timeout.args | 2 +-
...-graphics-vnc-auto-unix-socket-with-listen.args | 22 +
...v-graphics-vnc-auto-unix-socket-with-listen.xml | 36 +
...qemuxml2argv-graphics-vnc-auto-unix-socket.args | 22 +
.../qemuxml2argv-graphics-vnc-auto-unix-socket.xml | 34 +
tests/qemuxml2argvtest.c | 8 +-
23 files changed, 1051 insertions(+), 945 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-unix-socket-with-listen.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-unix-socket-with-listen.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-unix-socket.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-auto-unix-socket.xml
--
2.7.4
9 years
[libvirt] [PATCH 0/2] host-validate: Don't build on Windows
by Andrea Bolognani
The recent fixes to virt-host-validate have caused the mingw
build to fail[1].
Instead of working around Windows' quirks in the tool, just
stop building it altogether - it's not like it made any
sense to have it available on that OS anyway.
Cheers.
[1] https://ci.centos.org/view/libvirt-project/job/libvirt-mingw/1496/
Andrea Bolognani (2):
tools: Reorganize conditional bits
configure: Make virt-host-validate optional
configure.ac | 29 ++++++++++++++++++-----------
m4/virt-host-validate.m4 | 40 ++++++++++++++++++++++++++++++++++++++++
tools/Makefile.am | 35 ++++++++++++++++++-----------------
3 files changed, 76 insertions(+), 28 deletions(-)
create mode 100644 m4/virt-host-validate.m4
--
2.5.5
9 years
[libvirt] [PATCH 00/10] conf: disk xml parser refactors
by Peter Krempa
I unfortunately looked at this function. I did not like what I've seen.
Let's start making it a bit more bearable.
This series starts splitting and cleaning up virDomainDiskDefParseXML which is
an unmaintainable spaghettti-code mess currently.
Peter Krempa (10):
util: Rename and move virStrIsPrint to virStringIsPrintable
conf: disk: Don't initialize fields allocated by calloc
conf: disk: Remove one unnecessary level of indentation
conf: disk: Extract iotune parsing into a separate func
conf: disk: Remove error label from virDomainDiskDefIotuneParse
conf: virDomainDiskDefIotuneParse: simplfiy parsing
conf: virDomainDiskDefIotuneParse: Report malformed number errors
conf: disk: Split out parsing of disk mirror data
conf: Refactor virDomainDiskDefMirrorParse
conf: extract disk geometry parsing code
src/conf/domain_conf.c | 777 ++++++++++++++++++++++-------------------------
src/libvirt_private.syms | 2 +-
src/util/virstring.c | 18 ++
src/util/virstring.h | 2 +
src/util/virutil.c | 12 -
src/util/virutil.h | 2 -
6 files changed, 377 insertions(+), 436 deletions(-)
--
2.8.0
9 years
[libvirt] [libxl] shutdown a domain before it finishes starting
by Zhangbo (Oscar)
Hi all:
Suppose we have a guest domain which is pvops, for example, rhel6.4.
Steps to produce the problem:
1 start the guest by virDomainCreate()
2 the API returns before the guest domain fully available, which means, the disks, network interfaces and some import services are not available inside the guest.
3 we call virDomainShutdown() to shutdown the guest.
Expected result:
The guest got shutdown.
The result in fact:
Because the guest is not available when we call virDomainShutdown(), it couldn't respond to our 'shutdown' xenstore request, the guest turns on later, rather than shutting down.
So , the question is:
In libxl_driver( xen-hypervisor environment), how can we tell that the guest is available or not, and is it suitable to shutdown the guest at that moment?
Thanks in advance.
Oscar.
9 years
[libvirt] How to get GCOV result of make check?
by Zhangbo (Oscar)
Hi all:
I want to get the coverage result of 'make check', here is my way:
1. ./configure *****
2. make clean -j
*3*. find ./ -name Makefile |xargs sed -i "s/\= gcc/= gcc -fprofile-arcs -ftest-coverage/g" # add gcov-related cflags
4. make check -j
5. lcov -d . -c -o libvirt.info
6. genhtml libvirt.info -o libvirtresult
My key work Is step 3, however, I don't think it's a graceful way to get gcov result.
How do you usually get the gcov results, thanks!
Oscar.
9 years