[libvirt] [PATCH] parallels: better support of volume based disks in containers
by Maxim Nestratov
It is possible to attach volumes to containers but since they are
added they are reported erroneously as filesystems. It is fixed
in this patch. And as soon as bus type has no meaning for containers
we always report SATA for such disks.
In case a container is created with the only disk based on physical
volume we are expected to specify mount point to be able to boot
from it, that is done in the patch.
Sygned-off-by: Maxim Nestratov <mnestratov(a)parallels.com>
---
.gnulib | 2 +-
src/parallels/parallels_sdk.c | 40 +++++++++++++++++++++++++++++++---------
2 files changed, 32 insertions(+), 10 deletions(-)
diff --git a/.gnulib b/.gnulib
index 875ec93..106a386 160000
--- a/.gnulib
+++ b/.gnulib
@@ -1 +1 @@
-Subproject commit 875ec93e1501d2d2a8bab1b64fa66b8ceb51dc67
+Subproject commit 106a3866d01f9dd57ab4f10dbeb0d5a8db73a9f7
diff --git a/src/parallels/parallels_sdk.c b/src/parallels/parallels_sdk.c
index 39c200a..9228bfb 100644
--- a/src/parallels/parallels_sdk.c
+++ b/src/parallels/parallels_sdk.c
@@ -452,7 +452,8 @@ prlsdkAddDomainVideoInfo(PRL_HANDLE sdkdom, virDomainDefPtr def)
static int
prlsdkGetDiskInfo(PRL_HANDLE prldisk,
virDomainDiskDefPtr disk,
- bool isCdrom)
+ bool isCdrom,
+ bool isCt)
{
char *buf = NULL;
PRL_UINT32 buflen = 0;
@@ -495,8 +496,13 @@ prlsdkGetDiskInfo(PRL_HANDLE prldisk,
if (virDomainDiskSetSource(disk, buf) < 0)
goto cleanup;
- pret = PrlVmDev_GetIfaceType(prldisk, &ifType);
- prlsdkCheckRetGoto(pret, cleanup);
+ /* Let physical devices added to CT look like SATA disks */
+ if (isCt)
+ ifType = PMS_SATA_DEVICE;
+ else {
+ pret = PrlVmDev_GetIfaceType(prldisk, &ifType);
+ prlsdkCheckRetGoto(pret, cleanup);
+ }
pret = PrlVmDev_GetStackIndex(prldisk, &pos);
prlsdkCheckRetGoto(pret, cleanup);
@@ -606,10 +612,16 @@ prlsdkAddDomainHardDisksInfo(PRL_HANDLE sdkdom, virDomainDefPtr def)
prlsdkCheckRetGoto(pret, error);
for (i = 0; i < hddCount; ++i) {
+
+ PRL_UINT32 emulatedType;
+
pret = PrlVmCfg_GetHardDisk(sdkdom, i, &hdd);
prlsdkCheckRetGoto(pret, error);
- if (IS_CT(def)) {
+ pret = PrlVmDev_GetEmulatedType(hdd, &emulatedType);
+ prlsdkCheckRetGoto(pret, error);
+
+ if (PDT_USE_REAL_DEVICE != emulatedType && IS_CT(def)) {
if (VIR_ALLOC(fs) < 0)
goto error;
@@ -627,7 +639,7 @@ prlsdkAddDomainHardDisksInfo(PRL_HANDLE sdkdom, virDomainDefPtr def)
if (!(disk = virDomainDiskDefNew(NULL)))
goto error;
- if (prlsdkGetDiskInfo(hdd, disk, false) < 0)
+ if (prlsdkGetDiskInfo(hdd, disk, false, IS_CT(def)) < 0)
goto error;
if (VIR_APPEND_ELEMENT(def->disks, def->ndisks, disk) < 0)
@@ -667,7 +679,7 @@ prlsdkAddDomainOpticalDisksInfo(PRL_HANDLE sdkdom, virDomainDefPtr def)
if (!(disk = virDomainDiskDefNew(NULL)))
goto error;
- if (prlsdkGetDiskInfo(cdrom, disk, true) < 0)
+ if (prlsdkGetDiskInfo(cdrom, disk, true, IS_CT(def)) < 0)
goto error;
PrlHandle_Free(cdrom);
@@ -2878,7 +2890,10 @@ static int prlsdkDelDisk(PRL_HANDLE sdkdom, int idx)
return ret;
}
-static int prlsdkAddDisk(PRL_HANDLE sdkdom, virDomainDiskDefPtr disk, bool bootDisk)
+static int prlsdkAddDisk(PRL_HANDLE sdkdom,
+ virDomainDiskDefPtr disk,
+ bool bootDisk,
+ bool isCt)
{
PRL_RESULT pret;
PRL_HANDLE sdkdisk = PRL_INVALID_HANDLE;
@@ -3039,6 +3054,13 @@ static int prlsdkAddDisk(PRL_HANDLE sdkdom, virDomainDiskDefPtr disk, bool bootD
if (prlsdkAddDeviceToBootList(sdkdom, devIndex, devType, 0) < 0)
goto cleanup;
+
+ /* If we add physical device as a boot disk to container
+ * we have to specify mount point for it */
+ if (isCt) {
+ pret = PrlVmDevHd_SetMountPoint(sdkdisk, "/");
+ prlsdkCheckRetGoto(pret, cleanup);
+ }
}
return 0;
@@ -3059,7 +3081,7 @@ prlsdkAttachVolume(virDomainObjPtr dom, virDomainDiskDefPtr disk)
if (PRL_FAILED(waitJob(job)))
goto cleanup;
- ret = prlsdkAddDisk(privdom->sdkdom, disk, false);
+ ret = prlsdkAddDisk(privdom->sdkdom, disk, false, IS_CT(dom->def));
if (ret == 0) {
job = PrlVm_CommitEx(privdom->sdkdom, PVCF_DETACH_HDD_BUNDLE);
if (PRL_FAILED(waitJob(job))) {
@@ -3282,7 +3304,7 @@ prlsdkDoApplyConfig(virConnectPtr conn,
needBoot = false;
bootDisk = true;
}
- if (prlsdkAddDisk(sdkdom, def->disks[i], bootDisk) < 0)
+ if (prlsdkAddDisk(sdkdom, def->disks[i], bootDisk, IS_CT(def)) < 0)
goto error;
}
--
2.1.0
9 years, 5 months
[libvirt] [PATCH] Post-release version bump to 1.2.17
by Daniel P. Berrange
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Pushed under trivial rule. NB we might decide to switch to
1.3.0 before next release, so this is just placeholder for
now.
diff --git a/configure.ac b/configure.ac
index 6122fa5..0da3ae8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public
dnl License along with this library. If not, see
dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.2.16], [libvir-list(a)redhat.com], [], [http://libvirt.org])
+AC_INIT([libvirt], [1.2.17], [libvir-list(a)redhat.com], [], [http://libvirt.org])
AC_CONFIG_SRCDIR([src/libvirt.c])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([config.h])
--
2.4.1
9 years, 5 months
[libvirt] [PATCH python] Include tests in MANIFEST
by Daniel P. Berrange
The unit tests were missing from the tar.gz archives due to not
being listed in the MANIFEST.in file
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
MANIFEST.in | 2 ++
1 file changed, 2 insertions(+)
diff --git a/MANIFEST.in b/MANIFEST.in
index 230baea..b5ba783 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -34,6 +34,8 @@ include MANIFEST
include README
include sanitytest.py
include setup.py
+include tests/test_conn.py
+include tests/test_domain.py
include tox.ini
include typewrappers.c
include typewrappers.h
--
2.4.1
9 years, 5 months
[libvirt] [PATCHv2] qemu: fix unsuitable error report when get memory stats
by Wang Yufei
From: Zhang Bo <oscar.zhangbo(a)huawei.com>
when we run the command 'virsh dommemstat xxx',
althrough memballoon's model is set 'none' in vm's XML,
it still reports an error in libvirtd.log.
error : qemuMonitorFindBalloonObjectPath:1042 : internal error: Cannot determine balloon device path
Apparently, if we don't set memballoon, we don't need to
set balloon device path.
Signed-off-by: Wang Yufei <james.wangyufei(a)huawei.com>
Signed-off-by: Zhang Bo <oscar.zhangbo(a)huawei.com>
---
src/qemu/qemu_monitor.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
index f959b74..c72702d 100644
--- a/src/qemu/qemu_monitor.c
+++ b/src/qemu/qemu_monitor.c
@@ -1711,7 +1711,9 @@ qemuMonitorGetMemoryStats(qemuMonitorPtr mon,
QEMU_CHECK_MONITOR(mon);
if (mon->json) {
- ignore_value(qemuMonitorFindBalloonObjectPath(mon, "/"));
+ if (mon->vm->def->memballoon &&
+ mon->vm->def->memballoon->model != VIR_DOMAIN_MEMBALLOON_MODEL_NONE)
+ ignore_value(qemuMonitorFindBalloonObjectPath(mon, "/"));
mon->ballooninit = true;
return qemuMonitorJSONGetMemoryStats(mon, mon->balloonpath,
stats, nr_stats);
--
1.7.12.4
9 years, 5 months
[libvirt] [libvirt-glib] storage-pool: API to get/set autostart flag
by Zeeshan Ali (Khattak)
Add binding for virStoragePoolGetAutostart & virStoragePoolSetAutostart.
---
libvirt-gobject/libvirt-gobject-storage-pool.c | 52 ++++++++++++++++++++++++++
libvirt-gobject/libvirt-gobject-storage-pool.h | 5 +++
libvirt-gobject/libvirt-gobject.sym | 6 +++
3 files changed, 63 insertions(+)
diff --git a/libvirt-gobject/libvirt-gobject-storage-pool.c b/libvirt-gobject/libvirt-gobject-storage-pool.c
index f3eac0d..e520c6a 100644
--- a/libvirt-gobject/libvirt-gobject-storage-pool.c
+++ b/libvirt-gobject/libvirt-gobject-storage-pool.c
@@ -1048,6 +1048,58 @@ gboolean gvir_storage_pool_delete (GVirStoragePool *pool,
return TRUE;
}
+/**
+ * gvir_storage_pool_get_autostart:
+ * @pool: the storage pool
+ * @err: return location for any #GError
+ *
+ * Return value: #True if autostart is enabled, #False otherwise.
+ */
+gboolean gvir_storage_pool_get_autostart(GVirStoragePool *pool,
+ GError **err)
+{
+ gboolean ret = FALSE;
+
+ g_return_val_if_fail(GVIR_IS_STORAGE_POOL(pool), ret);
+ g_return_val_if_fail(err == NULL || *err == NULL, ret);
+
+ if (virStoragePoolGetAutostart(pool->priv->handle, &ret)) {
+ gvir_set_error_literal(err, GVIR_STORAGE_POOL_ERROR,
+ 0,
+ "Failed to get autostart flag from storage pool");
+ return FALSE;
+ }
+
+ return ret;
+}
+
+/**
+ * gvir_storage_pool_set_autostart:
+ * @pool: the storage pool
+ * @autostart: New value for autostart flag
+ * @err: return location for any #GError
+ *
+ * Sets whether or not storage pool @pool is started automatically on boot.
+ *
+ * Return value: #TRUE on success, #FALSE otherwise.
+ */
+gboolean gvir_storage_pool_set_autostart(GVirStoragePool *pool,
+ gboolean autostart,
+ GError **err)
+{
+ g_return_val_if_fail(GVIR_IS_STORAGE_POOL(pool), FALSE);
+ g_return_val_if_fail(err == NULL || *err == NULL, FALSE);
+
+ if (virStoragePoolSetAutostart(pool->priv->handle, autostart)) {
+ gvir_set_error_literal(err, GVIR_STORAGE_POOL_ERROR,
+ 0,
+ "Failed to set autostart flag on storage pool");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
static void
gvir_storage_pool_delete_helper(GSimpleAsyncResult *res,
GObject *object,
diff --git a/libvirt-gobject/libvirt-gobject-storage-pool.h b/libvirt-gobject/libvirt-gobject-storage-pool.h
index f8529f0..f7f879c 100644
--- a/libvirt-gobject/libvirt-gobject-storage-pool.h
+++ b/libvirt-gobject/libvirt-gobject-storage-pool.h
@@ -166,6 +166,11 @@ void gvir_storage_pool_delete_async (GVirStoragePool *pool,
gboolean gvir_storage_pool_delete_finish(GVirStoragePool *pool,
GAsyncResult *result,
GError **err);
+gboolean gvir_storage_pool_get_autostart(GVirStoragePool *pool,
+ GError **err);
+gboolean gvir_storage_pool_set_autostart(GVirStoragePool *pool,
+ gboolean autostart,
+ GError **err);
G_END_DECLS
diff --git a/libvirt-gobject/libvirt-gobject.sym b/libvirt-gobject/libvirt-gobject.sym
index 927cad9..dcda675 100644
--- a/libvirt-gobject/libvirt-gobject.sym
+++ b/libvirt-gobject/libvirt-gobject.sym
@@ -265,4 +265,10 @@ LIBVIRT_GOBJECT_0.2.0 {
gvir_domain_open_graphics_fd;
} LIBVIRT_GOBJECT_0.1.9;
+LIBVIRT_GOBJECT_0.2.1 {
+ global:
+ gvir_storage_pool_get_autostart;
+ gvir_storage_pool_set_autostart;
+} LIBVIRT_GOBJECT_0.2.0;
+
# .... define new API here using predicted next version number ....
--
2.1.0
9 years, 5 months
[libvirt] Release of libvirt-1.2.16
by Daniel Veillard
It's out ! Tagged in git, signed tarball and rpms are in place:
ftp://libvirt.org/libvirt/
I also made a libvirt-python-1.2.16 release fund at:
ftp://libvirt.org/libvirt/python/
This is a releatively small release, less than 150 commits, maybe the
effect of the travels to OpenStack summit this month, also bigger pieces
lining up for 1.3.0 planned for next month. There is still a few features,
portability patches and tuning for ARM 64, and a fair amount of bug fixes,
this should be a relatively safe release (famous last words :-)
Features:
- Introduce pci-serial (Michal Privoznik)
- Introduce virDomainSetUserPassword API (Ján Tomko)
- libvirt: Introduce protected key mgmt ops (Tony Krowiak)
- add domain vmport feature (Marc-André Lureau)
Documentation:
- update github project name (Daniel P. Berrange)
- formatstorage: Update <permissions> docs (Cole Robinson)
- Document new RO repo mirrors (Michal Privoznik)
- Document that virNodeGetInfo can return mhz == 0. (Richard W.M. Jones)
- fix a small xml error in docs (Luyao Huang)
- tests: Fix grammar in comments. (Andrea Bolognani)
- add domain vmport feature (Marc-André Lureau)
Portability:
- qemu: Fix compilation error when enum variable size differs from 'int' (Peter Krempa)
- bhyve: fix build with gcc48 (Roman Bogorodskiy)
- Add missing XDR_FLAGS (Pavel Fedin)
- node_device: fix libvirt build if WITH_HAL is defined (Maxim Nestratov)
- util: Avoid shadow of 'ulong' in virMemoryMaxValue (Peter Krempa)
- Fix build --without-network (Martin Kletzander)
- maint: extend PIE support check (Roman Bogorodskiy)
- bhyve: fix bhyvexml2argvtest build with gcc (Roman Bogorodskiy)
Bug Fixes:
- Allocate priv->vioserialaddrs unconditionally (Ján Tomko)
- Properly free the xmlDocPtr when loading pool state (Ján Tomko)
- storage: Fix problem with disk backend pool allocation calculation (John Ferlan)
- storage: Don't adjust pool alloc/avail values for disk backend (John Ferlan)
- virsh: Fix to list online cpus using virsh capabilities (Kothapally Madhu Pavan)
- Fix the event name in vshEventTrayChangePrint (Ján Tomko)
- Fix shrinking volumes with the delta flag (Ján Tomko)
- interface: don't error out if a bond has no interfaces (Lubomir Rintel)
- qemu: Limit rtc-reset-reinjection requirement to x86 only. (Andrea Bolognani)
- storage_fs: Create directory with UID if needed (Martin Kletzander)
- zfs: fix storagepoolxml2xml test (Roman Bogorodskiy)
- qemu: Force capabilities cache refresh if libvirtd date is different (John Ferlan)
- qemu: Resolve Coverity RESOURCE_LEAK (John Ferlan)
- conf: Resolve Coverity NEGATIVE_RETURNS (John Ferlan)
- storage: fs: Only force directory permissions if required (Cole Robinson)
- parallels: fix possible crash in case of errors in prlsdkLoadDomain (Maxim Nestratov)
- virsh: reject negative values for scaled integer (Pavel Hrdina)
- network: Resolve Coverity FORWARD_NULL (John Ferlan)
- conf: Resolve Coverity FORWARD_NULL (John Ferlan)
- storage: Resolve Coverity FORWARD_NULL (John Ferlan)
- netdev: fail when setting up an SRIOV VF if PF is offline (Laine Stump)
- qemuDomainDetachChrDevice: Fix chardev hot-unplug (Michal Privoznik)
- qemuDomainAttachChrDevice: Fix chardev hotplug (Michal Privoznik)
- qemu: Log error if domain uses security driver which is not loaded (Erik Skultety)
- conf: Restore the XML parser context in virDomainMemoryDefParseXML (Luyao Huang)
- conf: Catch memory size overflow earlier (Peter Krempa)
- virfile: virDirCreate: Fix ALLOW_EXIST conditional (Cole Robinson)
- qemu: Fix numatune nodeset reporting (Martin Kletzander)
- xenconfig: fix spice mousemode and copypaste (Jim Fehlig)
- xenconfig: fix spicepasswd handling (Jim Fehlig)
- node_device: update sriov/iommu info before dumpxml of a device (Laine Stump)
- virsh: Fix dommemstat --period option type. (Andrea Bolognani)
- qemu: fix exceptions in qemuAssignDeviceControllerAlias (Laine Stump)
- qemu: Don't give up on first error in qemuMigrationCancelDriverMirror (Jiri Denemark)
- reject out of range memory in SetMemory APIs (Ján Tomko)
- qemu: Clear autofil fill flag when pinning iothread (John Ferlan)
- virsh: Report an error when cpulist parsing fails (Luyao Huang)
- Assign virtio-serial addresses after coldplugging a device (Ján Tomko)
- qemu: vnc: error out for invalid port number (Pavel Hrdina)
- conf: Remove source host name check for iSCSI (John Ferlan)
- qemu: fix double free when RNG cold-plug fails (Luyao Huang)
- libvirt-guests: Initialize SYNC_TIME (Michal Privoznik)
- conf: Report error for unknown shmem ioeventfd value (Luyao Huang)
- qemu: Fix balloon size handling with memory hot(un)plug (Peter Krempa)
- conf: Fix up balloon size after removing a memory device from def (Peter Krempa)
- caps: Fix regression defaulting to host arch (Cole Robinson)
- processSerialChangedEvent: Close agent monitor early (Michal Privoznik)
- qemuDomainShutdownFlags: check for domain activeness prior to guest presence (Michal Privoznik)
- lxc: don't up the veth interfaces unless explicitly asked to (Lubomir Rintel)
- qemu: Resolve Coverity FORWARD_NULL (John Ferlan)
- qemu: Resolve Coverity FORWARD_NULL (John Ferlan)
- qemu: Resolve Coverity FORWARD_NULL (John Ferlan)
- xen: Resolve Coverity FORWARD_NULL (John Ferlan)
- qemu: Resolve Coverity FORWARD_NULL (John Ferlan)
- qemu: Resolve Coverity IDENTICAL_BRANCHES (John Ferlan)
- vbox: Resolve Coverity RESOURCE_LEAK (John Ferlan)
- libxl: Resolve Coverity RESOURCE_LEAK (John Ferlan)
- conf: Add the cpu duplicate use check for vm numa settings (Luyao Huang)
- qemu: Properly rename persistent def after migration (Jiri Denemark)
- storage: fs: Don't try to chown directory unless user requested (Cole Robinson)
- storage: fs: Don't attempt directory creation if it already exists (Cole Robinson)
- storage: fs: Don't overwrite virDirCreate error (Cole Robinson)
- virsh: Don't check migrate parameters (Jiri Denemark)
- qemu: Forbid unsupported parameters for tunnelled migration (Jiri Denemark)
- qemu: fix the vm deadlock when deleting a nonexistent iothread (Luyao Huang)
- tools: fix the wrong check when use virsh setvcpus --maximum (Luyao Huang)
Improvements:
- libxl: support QXL video device (Jim Fehlig)
- libxl: support SPICE graphics for HVM domains (Jim Fehlig)
- libxl: change reservedVNCPorts to reservedGraphicsPorts (Jim Fehlig)
- libxl: populate build_info vfb in separate function (Jim Fehlig)
- debug: assure NULLSTR() around all %s args in debug at top of public APIs (Laine Stump)
- node_device: more informative error log when device isn't found (Laine Stump)
- Simplify allocation check in storageVolResize (Ján Tomko)
- parallels: suppress console output from parallels SDK (Maxim Nestratov)
- util: make it more robust to calculate timeout value (Zhang Bo)
- util: improve the sysinfo element XML format (Luyao Huang)
- conf: Avoid formatting empty redirfilter element (Luyao Huang)
- maint: update to latest gnulib (Eric Blake)
- qemu: Add libvirt version check to refresh capabilities algorithm (John Ferlan)
- conf: storage: Don't emit empty <permissions> block (Cole Robinson)
- storage: conf: Don't set any default <mode> in the XML (Cole Robinson)
- parallels: move up updating parameter in prlsdkLoadDomain (Maxim Nestratov)
- zfs: fix storagepoolxml2xml test (Roman Bogorodskiy)
- util: better error message after failure to initialize firewall backend (Laine Stump)
- interface: allow multiple IPv4 addresses + dhcp on a single interface (Laine Stump)
- storage: conf: Don't output owner/group -1 (Cole Robinson)
- sysinfo: Fix reports on ARM (Michal Privoznik)
- qemu: Implement pci-serial (Michal Privoznik)
- qemu: wire up virDomainSetUserPassword (Ján Tomko)
- virsh: add set-user-password command (Ján Tomko)
- threadpool: Switch to detached threads (Jiri Denemark)
- Use virDomainDiskByName where appropriate (Jiri Denemark)
- Add wrappers for virDomainDiskIndexBy* (Jiri Denemark)
- virDomainNumatuneGetMode: Report if numatune was defined (Michal Privoznik)
- Taint domains using cdrom-passthrough (John Ferlan)
- virfile: virDirCreate: Drop redundant FORCE_PERMS flag (Cole Robinson)
- xenconfig: format spice listenAddr when formating ports (Jim Fehlig)
- xenconfig: use local variable for graphics def (Jim Fehlig)
- node_device: replace duplicated code in hal and udev backends (Laine Stump)
- node_device: new functions to get sriov/iommu info from sysfs (Laine Stump)
- node device: prepare node_device_linux_sysfs.c to add more functions (Laine Stump)
- nodedev: change if-else if in update_caps to switch (Laine Stump)
- conf: make virNodeDevCapData an official type (Laine Stump)
- virsh: Improve handling of send-process-signal --pid. (Andrea Bolognani)
- virsh: Improve error message on integer value parsing failure. (Andrea Bolognani)
- libvirt: tests: test protected key mgmt ops support (Tony Krowiak)
- libvirt: qemu: enable/disable protected key management ops (Tony Krowiak)
- libxl: provide impl for nodeGetSecurityModel (Jim Fehlig)
- qemu: log error when domain has an unsupported IDE controller (Laine Stump)
- qemu: clean up qemuBuildCommandline loop that builds controller args (Laine Stump)
- qemu: remove test for allowing ide controller in s390, rename usb tests (Laine Stump)
- qemu: use controller alias when constructing device/controller args (Laine Stump)
- conf: utility to return alias of a controller based on type/index (Laine Stump)
- qemu: Keep track of what disks are being migrated (Jiri Denemark)
- Move QEMU-only fields from virDomainDiskDef into privateData (Jiri Denemark)
- Rename virDomainHasBlockjob as qemuDomainHasBlockjob (Jiri Denemark)
- Add privateData to virDomainDiskDef (Jiri Denemark)
- Some alignment fixes in lxc_controller and jsontest (Martin Kletzander)
- gendispatch: Don't generate long lines (Martin Kletzander)
- virnetserver: Remove unnecessary double space (Martin Kletzander)
- rpc: Don't mix max_clients and max_workers in PostExecRestart (Martin Kletzander)
- conf: Expose iothreadids when delete non sequential iothreadids (John Ferlan)
- parallels: remove connection wide wait timeout (Nikolay Shirokovskiy)
- qemuMigrationPrepareAny: Drop useless variable @now (zhang bo)
- maint: Ignore Vim swap files (Andrea Bolognani)
- virSysinfoParseProcessor: Drop useless check for NULL (Michal Privoznik)
- libxl: support VNC passwd (Jim Fehlig)
- conf: Adjust duplicate source host port check (John Ferlan)
- daemon: Suppress logging of VIR_ERR_NO_DOMAIN_METADATA (Peter Krempa)
- conf_capabilities: fix wrong indentation (Pavel Hrdina)
- XML: escape strings where we should do it (Pavel Hrdina)
- qemu: eliminate duplicated code in qemuBuildDriveDevStr() (Laine Stump)
- qemu: use qemuDomainMachineIsI440FX() in appropriate place (Laine Stump)
- Ignore bridge template names with multiple printf conversions (Ján Tomko)
- conf: Always truncate balloon size to maximum memory size (Peter Krempa)
- qemu: Convert qemuConnectGetAllDomainStats to use new helpers (Peter Krempa)
- conf: Add helper to convert list of virDomains to a list of virDomainObjs (Peter Krempa)
- conf: Refactor domain list collection critical section (Peter Krempa)
- conf: Rename virDomainObjListFilter type to virDomainObjListACLFilter (Peter Krempa)
- conf: Extract code to filter domain list into a separate function (Peter Krempa)
- util: Make the virDomainListFree helper more universal (Peter Krempa)
- tests: Remove redundant aarch64 tests (Cole Robinson)
- qemu: multiqueue for ccw devices (Boris Fiuczynski)
- libxl: support soundhw for hvm domains (Jim Fehlig)
- libxl: add logrotate config file (Jim Fehlig)
- qemu: Implement GIC (Michal Privoznik)
- Introduce GIC feature (Michal Privoznik)
- polkit: Allow password-less access for 'libvirt' group (Cole Robinson)
- storage: fs: Fill in permissions on pool refresh (Cole Robinson)
- tests: add machine vmport qemu test (Marc-André Lureau)
- qemu: add machine vmport argument (Marc-André Lureau)
- qemu: add virQEMUCapsSupportsVmport (Marc-André Lureau)
- qemu: move qemuDomainMachineIs{I440FX,Q35} (Marc-André Lureau)
- qemu: add QEMU_CAPS_MACHINE_VMPORT_OPT (Marc-André Lureau)
- domain/conf: add VIR_DOMAIN_FEATURE_VMPORT (Marc-André Lureau)
- virsh: introduce new macros to help check flag requirements (Pavel Hrdina)
- qemu: use new macros for setvcpus to check flags and cleanup the code (Pavel Hrdina)
- use new macro helpers to check flag requirements (Pavel Hrdina)
- use new macro helpers to check exclusive flags (Pavel Hrdina)
- internal: introduce macro helpers to check flag requirements (Pavel Hrdina)
- internal: introduce macro helpers to reject exclusive flags (Pavel Hrdina)
So thanks everybody for your help pulling out this last release of the
1.2 cycle, be it with patches, ideas, reports, reviews ...
Enjoy !
Daniel
--
Daniel Veillard | Open Source and Standards, Red Hat
veillard(a)redhat.com | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | virtualization library http://libvirt.org/
9 years, 5 months