[libvirt] [PATCH python] Post-release version bump to 2.2.0
by Cole Robinson
---
Pushed as trivial
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
index 647529b..240e796 100755
--- a/setup.py
+++ b/setup.py
@@ -307,7 +307,7 @@ class my_clean(clean):
_c_modules, _py_modules = get_module_lists()
setup(name = 'libvirt-python',
- version = '2.1.0',
+ version = '2.2.0',
url = 'http://www.libvirt.org',
maintainer = 'Libvirt Maintainers',
maintainer_email = 'libvir-list(a)redhat.com',
--
2.7.4
8 years, 4 months
[libvirt] [PATCH] remote: Fix indentation of the remote protocol structs check file
by Peter Krempa
---
Pushed under the build-breaker rule.
src/remote_protocol-structs | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs
index 0e66fc5..24401d1 100644
--- a/src/remote_protocol-structs
+++ b/src/remote_protocol-structs
@@ -2572,20 +2572,20 @@ struct remote_storage_pool_event_refresh_msg {
remote_nonnull_storage_pool pool;
};
struct remote_connect_node_device_event_register_any_args {
- int eventID;
- remote_node_device dev;
+ int eventID;
+ remote_node_device dev;
};
struct remote_connect_node_device_event_register_any_ret {
- int callbackID;
+ int callbackID;
};
struct remote_connect_node_device_event_deregister_any_args {
- int callbackID;
+ int callbackID;
};
struct remote_node_device_event_lifecycle_msg {
- int callbackID;
- remote_nonnull_node_device dev;
- int event;
- int detail;
+ int callbackID;
+ remote_nonnull_node_device dev;
+ int event;
+ int detail;
};
struct remote_domain_fsfreeze_args {
remote_nonnull_domain dom;
--
2.9.2
8 years, 4 months
[libvirt] [PATCH] tests: Make schema test fail on XML schema errors
by Peter Krempa
Failure to parse the schema file would not trigger a test suite failure.
In addition to making the test fail it's necessary to split up the
parsing of the schema file into a separate test.
This is necessary as the XML validator uses libvirt errors to report
problems parsing of the actual schema RNG needs to be split out into a
separate function and called via virTestRun which has the
infrastructure to report them.
---
tests/virschematest.c | 64 ++++++++++++++++++++++++++++++++++++---------------
1 file changed, 46 insertions(+), 18 deletions(-)
diff --git a/tests/virschematest.c b/tests/virschematest.c
index a1901e7..dbd9f3b 100644
--- a/tests/virschematest.c
+++ b/tests/virschematest.c
@@ -114,24 +114,17 @@ testSchemaDir(const char *schema,
static int
-testSchemaDirs(const char *schema, ...)
+testSchemaDirs(const char *schema, virXMLValidatorPtr validator, ...)
{
- virXMLValidatorPtr validator = NULL;
va_list args;
int ret = 0;
- char *schema_path = NULL;
char *dir_path = NULL;
const char *dir;
- va_start(args, schema);
-
- if (virAsprintf(&schema_path, "%s/docs/schemas/%s", abs_topsrcdir, schema) < 0)
- goto cleanup;
-
- if (!(validator = virXMLValidatorInit(schema_path)))
- goto cleanup;
+ va_start(args, validator);
while ((dir = va_arg(args, char *))) {
+ printf("\nDERP: %s\n", dir);
if (virAsprintf(&dir_path, "%s/%s", abs_srcdir, dir) < 0) {
ret = -1;
goto cleanup;
@@ -142,24 +135,59 @@ testSchemaDirs(const char *schema, ...)
}
cleanup:
- virXMLValidatorFree(validator);
- VIR_FREE(schema_path);
VIR_FREE(dir_path);
va_end(args);
return ret;
}
+struct testSchemaFileData {
+ virXMLValidatorPtr validator;
+ const char *schema;
+};
+
+static int
+testSchemaGrammar(const void *opaque)
+{
+ struct testSchemaFileData *data = (struct testSchemaFileData *) opaque;
+ char *schema_path;
+ int ret = -1;
+
+ if (virAsprintf(&schema_path, "%s/docs/schemas/%s",
+ abs_topsrcdir, data->schema) < 0)
+ return -1;
+
+ if (!(data->validator = virXMLValidatorInit(schema_path)))
+ goto cleanup;
+
+ ret = 0;
+
+ cleanup:
+ VIR_FREE(schema_path);
+ return ret;
+}
+
+
static int
mymain(void)
{
int ret = 0;
-
-#define DO_TEST(schema, ...) \
- do { \
- if (testSchemaDirs(schema, __VA_ARGS__, NULL) < 0) \
- ret = -1; \
- } while (0) \
+ struct testSchemaFileData data;
+
+#define DO_TEST(sch, ...) \
+ do { \
+ data.schema = sch; \
+ if (virTestRun("test schema grammar file: " sch, \
+ testSchemaGrammar, &data) == 0) { \
+ if (testSchemaDirs(sch, data.validator, __VA_ARGS__, NULL) < 0) \
+ ret = -1; \
+ \
+ virXMLValidatorFree(data.validator); \
+ data.validator = NULL; \
+ } else { \
+ ret = -1; \
+ } \
+ } while (0)
DO_TEST("capability.rng", "capabilityschemadata", "xencapsdata");
DO_TEST("domain.rng", "domainschemadata", "qemuargv2xmldata",
--
2.9.2
8 years, 4 months
[libvirt] [PATCH 0/3] virsh: Clean up and fix qemu-monitor-command
by Peter Krempa
Mostly to allow piping of the prettified output into a file without having to
fix it up later to stop syntax-check whining.
Peter Krempa (3):
virsh: qemu-monitor-command: Use macro for exclusive options
virsh: qemu-monitor-command: Don't print extra newline with --pretty
virsh: qemu-monitor-command: Simplify control flow
tools/virsh-domain.c | 48 ++++++++++++++++++++----------------------------
1 file changed, 20 insertions(+), 28 deletions(-)
--
2.9.2
8 years, 4 months
[libvirt] [PATCH v2 0/9] Various hotplug cleanups
by John Ferlan
v1: http://www.redhat.com/archives/libvir-list/2016-June/msg02207.html
Changes since v1...
- Use the bz noted by Cole from the v1 series
- Merged in recent hotplug cleanup changes
- Patches 6 - 9 are new
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1336225
and probably: https://bugzilla.redhat.com/show_bug.cgi?id=1289391
Patches 1-5 address the USB hotplug cleanup
Patch 6 addresses the SCSI hotplug cleanup
Patch 7-9 address some SCSI host device cleanups found while looking at
the other cleanups...
John Ferlan (9):
qemu: Reorder qemuDomainAttachUSBMassStorageDevice failure path
qemu: Move drive alias processing to qemu_alias
qemu: Use qemuAssignDeviceDiskDriveAlias
qemu: Make QEMU_DRIVE_HOST_PREFIX more private
qemu: Add attempt to call qemuMonitorDriveDel for USB failure path
qemu: Add attempt to call qemuMonitorDriveDel for AttachSCSI failure
path
qemu: Introduce qemuAssignSCSIHostDeviceDriveAlias
qemu: Use qemuAssignSCSIHostDeviceDriveAlias
qemu: Use the hostdev alias in qemuDomainAttachHostSCSIDevice error
path
src/qemu/qemu_alias.c | 52 +++++++++++++++++++++++++
src/qemu/qemu_alias.h | 6 +++
src/qemu/qemu_command.c | 35 ++++++++---------
src/qemu/qemu_command.h | 1 -
src/qemu/qemu_domain.c | 3 +-
src/qemu/qemu_driver.c | 3 +-
src/qemu/qemu_hotplug.c | 92 +++++++++++++++++++++++++++++---------------
src/qemu/qemu_migration.c | 11 ++----
src/qemu/qemu_monitor_json.c | 10 ++---
src/qemu/qemu_monitor_text.c | 18 +++++----
src/qemu/qemu_process.c | 3 +-
11 files changed, 156 insertions(+), 78 deletions(-)
--
2.5.5
8 years, 4 months
[libvirt] [PATCH v2 0/3] libxl hooks
by Cédric Bosdonnat
Hey there!
Diffs to v1:
* move the ret = 0 to the proper patch
* fix typos as pointed by Joao
* use ignore_value where needed
Cédric Bosdonnat (3):
libxl: add a flag to mark guests as tainted by a hook
libxl: fix segfault in libxlReconnectDomain
libxl: add hooks support
docs/hooks.html.in | 53 ++++++++++++++++++++++++++--
src/libxl/libxl_domain.c | 84 +++++++++++++++++++++++++++++++++++++++++++++
src/libxl/libxl_domain.h | 2 ++
src/libxl/libxl_driver.c | 52 +++++++++++++++++++++-------
src/libxl/libxl_migration.c | 57 ++++++++++++++++++++++++++++++
src/util/virhook.c | 16 ++++++++-
src/util/virhook.h | 13 +++++++
7 files changed, 262 insertions(+), 15 deletions(-)
--
2.6.6
8 years, 4 months
[libvirt] [PATCH glib] Delete the manually written python binding
by Daniel P. Berrange
The python binding only supports python2, only supports
1 single API in libvirt-glib and has not even been enabled
in RPM builds since Fedora 15. Any distro these days should
have gobject introspection and pygobject available, so
there's no compelling reason to continue to have the python
binding exist.
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
Makefile.am | 2 +-
autobuild.sh | 6 ++--
cfg.mk | 3 --
configure.ac | 87 ----------------------------------------------
libvirt-glib.spec.in | 35 +------------------
mingw-libvirt-glib.spec.in | 3 +-
python/Makefile.am | 34 ------------------
python/libvirt-glib.c | 59 -------------------------------
python/libvirtglib.py | 10 ------
9 files changed, 5 insertions(+), 234 deletions(-)
delete mode 100644 python/Makefile.am
delete mode 100644 python/libvirt-glib.c
delete mode 100644 python/libvirtglib.py
diff --git a/Makefile.am b/Makefile.am
index ae8b06d..459d544 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,5 @@
-SUBDIRS = libvirt-glib libvirt-gconfig libvirt-gobject python vapi examples docs po tests
+SUBDIRS = libvirt-glib libvirt-gconfig libvirt-gobject vapi examples docs po tests
ACLOCAL_AMFLAGS = -I m4
diff --git a/autobuild.sh b/autobuild.sh
index 053dc1f..9935de1 100755
--- a/autobuild.sh
+++ b/autobuild.sh
@@ -56,8 +56,7 @@ if test -x /usr/bin/i686-w64-mingw32-gcc ; then
--host=i686-w64-mingw32 \
--prefix="$AUTOBUILD_INSTALL_ROOT/i686-w64-mingw32/sys-root/mingw" \
--enable-werror \
- --enable-introspection=no \
- --without-python
+ --enable-introspection=no
make
make install
@@ -75,8 +74,7 @@ if test -x /usr/bin/x86_64-w64-mingw32-gcc ; then
--host=x86_64-w64-mingw32 \
--prefix="$AUTOBUILD_INSTALL_ROOT/i686-w64-mingw32/sys-root/mingw" \
--enable-werror \
- --enable-introspection=no \
- --without-python
+ --enable-introspection=no
make
make install
diff --git a/cfg.mk b/cfg.mk
index b322393..6dd34cf 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -115,9 +115,6 @@ exclude_file_name_regexp--sc_preprocessor_indentation = ^*/*.[ch]
exclude_file_name_regexp--sc_prohibit_strcmp = ^*/*.[ch]
-exclude_file_name_regexp--sc_require_config_h = python/libvirt-glib.c
-exclude_file_name_regexp--sc_require_config_h_first = python/libvirt-glib.c
-
# XXX we shouldn't really ignore this, but the horrible enum rules...
exclude_file_name_regexp--sc_makefile_at_at_check = libvirt-gobject/Makefile.am
diff --git a/configure.ac b/configure.ac
index 8edde74..cc9b2aa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -135,15 +135,11 @@ dnl Copied from libxml2 configure.in, but I removed mingw changes
dnl for now since I'm not supporting mingw at present. - RWMJ
CYGWIN_EXTRA_LDFLAGS=
CYGWIN_EXTRA_LIBADD=
-CYGWIN_EXTRA_PYTHON_LIBADD=
MINGW_EXTRA_LDFLAGS=
case "$host" in
*-*-cygwin*)
CYGWIN_EXTRA_LDFLAGS="-no-undefined"
CYGWIN_EXTRA_LIBADD="${INTLLIBS}"
- if test "x$PYTHON_VERSION" != "x"; then
- CYGWIN_EXTRA_PYTHON_LIBADD="-L/usr/lib/python${PYTHON_VERSION}/config -lpython${PYTHON_VERSION}"
- fi
;;
*-*-mingw*)
MINGW_EXTRA_LDFLAGS="-no-undefined"
@@ -151,7 +147,6 @@ case "$host" in
esac
AC_SUBST([CYGWIN_EXTRA_LDFLAGS])
AC_SUBST([CYGWIN_EXTRA_LIBADD])
-AC_SUBST([CYGWIN_EXTRA_PYTHON_LIBADD])
AC_SUBST([MINGW_EXTRA_LDFLAGS])
@@ -172,87 +167,6 @@ if test "${enable_coverage}" = yes; then
COV_FLAGS=
fi
-dnl
-dnl check for python
-dnl
-AC_ARG_WITH([python],
- AC_HELP_STRING([--with-python], [Build python bindings @<:@default=yes@:>@]),[],[with_python=yes])
-
-PYTHON_VERSION=
-PYTHON_INCLUDES=
-PYTHON_SITE_PACKAGES=
-PYTHON_TESTS=
-pythondir=
-if test "$with_python" != "no" ; then
- if test "$with_python" = "yes" ; then
- with_python=""
- fi
- if test -x "$with_python/bin/python"
- then
- echo Found python in $with_python/bin/python
- PYTHON="$with_python/bin/python"
- else
- if test -x "$with_python"
- then
- echo Found python in $with_python
- PYTHON="$with_python"
- else
- if test -x "$PYTHON"
- then
- echo Found python in environment PYTHON=$PYTHON
- with_python=`$PYTHON -c "import sys; print sys.exec_prefix"`
- else
- AC_PATH_PROG([PYTHON], [python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5])
- fi
- fi
- fi
- if test "$PYTHON" != ""
- then
- PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
- echo Found Python version $PYTHON_VERSION
- fi
- if test "$PYTHON_VERSION" != ""
- then
- if test -r $with_python/include/python$PYTHON_VERSION/Python.h && \
- test -d $with_python/lib/python$PYTHON_VERSION/site-packages
- then
- PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION
- PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
- else
- if test -r $prefix/include/python$PYTHON_VERSION/Python.h
- then
- PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION
- PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
- else
- if test -r /usr/include/python$PYTHON_VERSION/Python.h
- then
- PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION
- PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
- else
- echo could not find python$PYTHON_VERSION/Python.h
- fi
- fi
- if test ! -d "$PYTHON_SITE_PACKAGES"
- then
- PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib()"`
- fi
- fi
- fi
- if test "$with_python" != ""
- then
- pythondir='$(PYTHON_SITE_PACKAGES)'
- else
- pythondir='$(libdir)/python$(PYTHON_VERSION)/site-packages'
- fi
-else
- PYTHON=
-fi
-AM_CONDITIONAL([WITH_PYTHON], test "$PYTHON_INCLUDES" != "")
-AC_SUBST([pythondir])
-AC_SUBST([PYTHON_VERSION])
-AC_SUBST([PYTHON_INCLUDES])
-AC_SUBST([PYTHON_SITE_PACKAGES])
-
GOBJECT_INTROSPECTION_CHECK([$GOBJECT_INTROSPECTION_REQUIRED])
with_linux=no
@@ -302,7 +216,6 @@ AC_OUTPUT(Makefile
libvirt-gconfig/tests/Makefile
libvirt-gobject/Makefile
examples/Makefile
- python/Makefile
vapi/Makefile
docs/Makefile
docs/libvirt-glib/Makefile
diff --git a/libvirt-glib.spec.in b/libvirt-glib.spec.in
index 32ce4f0..2ec8337 100644
--- a/libvirt-glib.spec.in
+++ b/libvirt-glib.spec.in
@@ -1,21 +1,14 @@
# -*- rpm-spec -*-
%define with_introspection 0
-%define with_python 0
%define with_vala 0
%if 0%{?fedora} >= 15
%define with_introspection 1
%endif
-%if 0%{?fedora} && 0%{?fedora} < 15
-%define with_python 1
-%endif
%if 0%{?rhel} > 6
%define with_introspection 1
%endif
-%if 0%{?rhel} && 0%{?rhel} < 7
-%define with_python 1
-%endif
%define with_vala %{with_introspection}
%define libvirt_version @LIBVIRT_REQUIRED@
@@ -32,7 +25,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: glib2-devel >= @GLIB2_REQUIRED@
BuildRequires: libvirt-devel >= %{libvirt_version}
-BuildRequires: python-devel
%if %{with_introspection}
BuildRequires: gobject-introspection-devel
%if 0%{?fedora} == 12
@@ -72,12 +64,6 @@ Requires: libvirt-gconfig-devel = %{version}-%{release}
Requires: libvirt-gobject = %{version}-%{release}
Requires: libvirt-devel >= %{libvirt_version}
-%if %{with_python}
-%package python
-Group: Development/Libraries
-Summary: libvirt glib integration for events python binding
-%endif
-
%description
This package provides integration between libvirt and the glib
event loop.
@@ -102,12 +88,6 @@ objects
This package provides development header files and libraries for
managing virtualization host objects
-%if %{with_python}
-%description python
-This package provides a python module for integration between
-libvirt and the glib event loop
-%endif
-
%prep
%setup -q
@@ -118,13 +98,8 @@ libvirt and the glib event loop
%else
%define introspection_arg --disable-introspection
%endif
-%if %{with_python}
-%define python_arg --with-python
-%else
-%define python_arg --without-python
-%endif
-%configure %{introspection_arg} %{python_arg}
+%configure %{introspection_arg}
%__make %{?_smp_mflags}
@@ -227,12 +202,4 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/vala/vapi/libvirt-gobject-1.0.vapi
%endif
-%if %{with_python}
-%files python
-%defattr(-,root,root,-)
-%doc examples/event-test.py
-%{_libdir}/python*/site-packages/libvirtglib.py*
-%{_libdir}/python*/site-packages/libvirtglibmod*
-%endif
-
%changelog
diff --git a/mingw-libvirt-glib.spec.in b/mingw-libvirt-glib.spec.in
index 0c71628..ab31a0d 100644
--- a/mingw-libvirt-glib.spec.in
+++ b/mingw-libvirt-glib.spec.in
@@ -87,8 +87,7 @@ MinGW Windows libvirt-gobject virtualization library.
%build
%mingw_configure \
- --enable-introspection=no \
- --without-python
+ --enable-introspection=no
%mingw_make %{?_smp_mflags}
diff --git a/python/Makefile.am b/python/Makefile.am
deleted file mode 100644
index 1471dce..0000000
--- a/python/Makefile.am
+++ /dev/null
@@ -1,34 +0,0 @@
-# Makefile for libvirt python library
-
-AM_CPPFLAGS = \
- $(WARN_CFLAGS) \
- -I$(PYTHON_INCLUDES) \
- -I$(top_srcdir) \
- $(GLIB2_CFLAGS)
-
-EXTRA_DIST = libvirtglib.py
-
-if WITH_PYTHON
-python_LTLIBRARIES = libvirtglibmod.la
-
-libvirtglibmod_la_SOURCES = libvirt-glib.c
-# Python header files contain a redundant decl, hence:
-libvirtglibmod_la_CFLAGS = -Wno-redundant-decls
-
-libvirtglibmod_la_LDFLAGS = -module -avoid-version \
- $(CYGWIN_EXTRA_LDFLAGS)
-libvirtglibmod_la_LIBADD = ../libvirt-glib/libvirt-glib-1.0.la
- $(CYGWIN_EXTRA_LIBADD) $(CYGWIN_EXTRA_PYTHON_LIBADD)
-
-
-install-data-local:
- $(mkinstalldirs) $(DESTDIR)$(pythondir)
- $(INSTALL) -m 0644 $(srcdir)/libvirtglib.py $(DESTDIR)$(pythondir)
-
-uninstall-local:
- rm -f $(DESTDIR)$(pythondir)/libvirtglib.py
-
-
-else
-all:
-endif
diff --git a/python/libvirt-glib.c b/python/libvirt-glib.c
deleted file mode 100644
index 1daca36..0000000
--- a/python/libvirt-glib.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * libvirt-glib.c: Binding the glib event loop integration to python
- *
- * Copyright (C) 2008 Red Hat, Inc., Inc.
- *
- * Daniel Berrange <berrange(a)redhat.com>
- */
-
-//#include <config.h>
-
-/* Horrible kludge to work around even more horrible name-space pollution
- via Python.h. That file includes /usr/include/python2.5/pyconfig*.h,
- which has over 180 autoconf-style HAVE_* definitions. Shame on them. */
-#undef HAVE_PTHREAD_H
-
-#include <Python.h>
-#include <glib.h>
-#include "libvirt-glib/libvirt-glib.h"
-
-#ifndef __CYGWIN__
-extern void initlibvirtglibmod(void);
-#else
-extern void initcygvirtglibmod(void);
-#endif
-
-#define VIR_PY_NONE (Py_INCREF (Py_None), Py_None)
-
-static PyObject *
-libvirt_gvir_event_register(PyObject *self G_GNUC_UNUSED, PyObject *args G_GNUC_UNUSED) {
- gvir_event_register();
-
- return VIR_PY_NONE;
-}
-
-
-static PyMethodDef libvirtGLibMethods[] = {
- {(char *) "event_register", libvirt_gvir_event_register, METH_VARARGS, NULL},
- {NULL, NULL, 0, NULL}
-};
-
-void
-#ifndef __CYGWIN__
-initlibvirtglibmod
-#else
-initcygvirtglibmod
-#endif
- (void)
-{
- gvir_init(NULL, NULL);
- /* initialize the python extension module */
- Py_InitModule((char *)
-#ifndef __CYGWIN__
- "libvirtglibmod"
-#else
- "cygvirtglibmod"
-#endif
- , libvirtGLibMethods);
-
-}
diff --git a/python/libvirtglib.py b/python/libvirtglib.py
deleted file mode 100644
index 3a74c3d..0000000
--- a/python/libvirtglib.py
+++ /dev/null
@@ -1,10 +0,0 @@
-
-# On cygwin, the DLL is called cygvirtmod.dll
-try:
- import libvirtglibmod
-except:
- import cygvirtglibmod as libvirtglibmod
-
-
-def event_register():
- libvirtglibmod.event_register()
--
2.7.4
8 years, 4 months
[libvirt] [PATCH v2] qemu: set fake reboot flag only in acpi mode
by Nikolay Shirokovskiy
First this fixes the same issue as e2b86f580. Only difference is
that reboot is done via shutdown function with reboot semantics.
Second 8be502fd tells us that we need to always set fake reboot
flag if shutdown/reboot will trigger shutdown event. To put
it simple we need to set it false if agent is used.
References:
e2b86f580 - fixes guest shutdown becames reboot after API reboot thru agent
8be502fd - fixes API shutdown thru agent becames reboot after API reboot
thru acpi (more on https://www.redhat.com/archives/libvir-list/2015-April/msg00715.html)
---
src/qemu/qemu_driver.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 2089359..8855387 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -1997,9 +1997,9 @@ static int qemuDomainShutdownFlags(virDomainPtr dom, unsigned int flags)
useAgent = false;
}
- qemuDomainSetFakeReboot(driver, vm, isReboot);
if (useAgent) {
+ qemuDomainSetFakeReboot(driver, vm, false);
qemuDomainObjEnterAgent(vm);
ret = qemuAgentShutdown(priv->agent, agentFlag);
qemuDomainObjExitAgent(vm);
@@ -2018,6 +2018,7 @@ static int qemuDomainShutdownFlags(virDomainPtr dom, unsigned int flags)
goto endjob;
}
+ qemuDomainSetFakeReboot(driver, vm, isReboot);
qemuDomainObjEnterMonitor(driver, vm);
ret = qemuMonitorSystemPowerdown(priv->mon);
if (qemuDomainObjExitMonitor(driver, vm) < 0)
@@ -2091,6 +2092,7 @@ qemuDomainReboot(virDomainPtr dom, unsigned int flags)
}
if (useAgent) {
+ qemuDomainSetFakeReboot(driver, vm, false);
qemuDomainObjEnterAgent(vm);
ret = qemuAgentShutdown(priv->agent, agentFlag);
qemuDomainObjExitAgent(vm);
--
1.8.3.1
8 years, 4 months
[libvirt] [PATCH 0/2] Fixes for broken build
by John Ferlan
Pushed under the build breaker rule
John Ferlan (2):
libxl: Fix broken build from libxlDomainCleanup
libxl: Fix broken build attach/detach controller device
src/libxl/libxl_domain.c | 2 +-
src/libxl/libxl_driver.c | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
--
2.7.4
8 years, 4 months
[libvirt] [PATCH V2 0/7] libxl: add support of pvusb controller
by Chunyan Liu
This patch series is to add pvusb controller support in libxl driver.
It should be applied on previous pvusb device support patch series.
---
Changes:
* drop pvusb1 and pvusb2 model
* add check in qemu device post-parse to report error of
unsupported 'qusb1' and 'qusb2' model
Chunyan Liu (7):
extend usb controller model to support xen pvusb
libxl: support USB controllers in creation time
libxl: support usb controller hotplug
libxl: check available controller and port when hotplugging USB device
xenconfig: add conversion of usb controller config to and from xml
xlconfigtest: add test for usb controller conversion
qemuDomainDeviceDefPostParse: add USB controller model check
docs/formatdomain.html.in | 4 +-
docs/schemas/domaincommon.rng | 2 +
src/conf/domain_conf.c | 2 +
src/conf/domain_conf.h | 2 +
src/libxl/libxl_conf.c | 84 ++++++++++++++++
src/libxl/libxl_conf.h | 4 +
src/libxl/libxl_driver.c | 176 +++++++++++++++++++++++++++++++++
src/qemu/qemu_command.c | 2 +
src/qemu/qemu_domain.c | 13 +++
src/xenconfig/xen_xl.c | 190 ++++++++++++++++++++++++++++++++++++
tests/xlconfigdata/test-usbctrl.cfg | 13 +++
tests/xlconfigdata/test-usbctrl.xml | 31 ++++++
tests/xlconfigtest.c | 1 +
13 files changed, 523 insertions(+), 1 deletion(-)
create mode 100644 tests/xlconfigdata/test-usbctrl.cfg
create mode 100644 tests/xlconfigdata/test-usbctrl.xml
--
2.1.4
8 years, 4 months