Since the issue I had with rc2 was apparently just on my setup, I just pushed the
release.
It is available as usual as signed tarball and rpms from :
ftp://libvirt.org/libvirt/
I also pushed 2.2.0 for the python bindings which you can find at:
ftp://libvirt.org/libvirt/python/
This is not a very big release, around 220 commits, august sounds like vacations, plus a
number
of the developpers travelled to KVM forun so development took a bit of a hit. As a result
we
have a release more inclined toward bug fixes though there is some features and notable
improvements:
Features:
- Sparse vCPU topologies support and assorted vCPU improvements (Peter Krempa)
- Various improvements and fixes for vz driver (Olga Krishtal, Nikolay Shirokovskiy, Maxim
Nestratov, Pavel Glushchak, Mikhail Feoktistov)
- Various improvements and fixes for libxl driver (Cédric Bosdonnat, Jim Fehlig, Chunyan
Liu, Roman Bogorodskiy)
Documentation:
- docs: Add missing / to closing tag (Christophe Fergeau)
- doc: clarify documentation for vcpu order (Peter Krempa)
- storage_backend_rbd: fix typos (Chen Hanxiao)
- qemu_driver: update comments for qemuDomainSaveInternal (Chen Hanxiao)
- virsh: clarify snapshot --live (Chen Hanxiao)
Portability:
- conf: Fix build with picky GCC (Peter Krempa)
- tests: fix domaincapstest linking for libxl (Roman Bogorodskiy)
- libxl: fix unused functions (Roman Bogorodskiy)
- docs: Distribute subsite.xsl (Michal Privoznik)
- nsslinktest: also build virAtomic.h (Kai Kang)
- build: centralize use of extra Cygwin LDFLAGS (Eric Blake)
- build: use XDR_CFLAGS for Cygwin build (Eric Blake)
Bug Fixes:
- tests: fix segfault in objecteventtest (Roman Bogorodskiy)
- bhyve: fix disks address allocation (Roman Bogorodskiy)
- Check for --live flag for postcopy-after-precopy migration (Kothapally Madhu Pavan)
- qemu: driver: Validate configuration when setting maximum vcpu count (Peter Krempa)
- conf: Don't validate vcpu count in XML parser (Peter Krempa)
- qemu: driver: Fix qemuDomainHelperGetVcpus for sparse vcpu topologies (Peter Krempa)
- vz: fixed race in vzDomainAttach/DettachDevice (Olga Krishtal)
- qemu: fix ethernet network type ip/route assign (Vasiliy Tolstov)
- Fix remote_protocol-structs after recent commit (Peter Krempa)
- network: Need to free formatted addr in networkDnsmasqConfContents (John Ferlan)
- remove the dead code this patch is to remove the dead code Signed-off-by: JieWang
<wangjie88(a)huawei.com> (JieWang)
- qemu: Fix crash hot plugging luks volume (John Ferlan)
- networkxml2conftest: Don't leak dnsmasq capabilities (Michal Privoznik)
- vz: fixed race in vzDomainAttach/DettachDevice (Olga Krishtal)
- qemu: Fix the command line generation for rbd auth using aes secrets (John Ferlan)
- qemu_process: graphics: setup listen types before ports are reserved/allocated (Pavel
Hrdina)
- conf: Provide error on undefined iothreadsched entry (John Ferlan)
- utils: storage: Fix JSON field name for uri based storage (Peter Krempa)
- conf: free the ports array of a USB hub (Ján Tomko)
- lxc: don't try to reference NULL when mounting filesystems (Daniel P. Berrange)
- lxc: don't try to resolve a NULL path for filesystems (Daniel P. Berrange)
- virsh: Fix core for cmdSecretGetValue (John Ferlan)
- virschematest: Make sure that validator is initialized (Michal Privoznik)
- cpu_x86: fix libvirtd crash when host cpu vendor is not available (Jim Fehlig)
- virschematest: Initialize @data (Michal Privoznik)
- schema: Don't validate paths (Michal Privoznik)
- virNetDevMacVLanCreateWithVPortProfile: Don't mask virNetDevMacVLanTapOpen error
(Michal Privoznik)
- qemu: fix qemu.conf security_driver (Cole Robinson)
- conf: restrict expander buses to connect only to a root bus (Laine Stump)
- conf: restrict where dmi-to-pci-bridge can be connected (Laine Stump)
- conf: don't allow connecting upstream-port directly to pce-expander-bus (Laine
Stump)
- conf: improve error log when PCI devices don't match requested controller (Laine
Stump)
- virt-admin: Fix the error when an invalid URI has been provided (Erik Skultety)
- cpu_x86: Fix host-model CPUs on hosts with CMT (Jiri Denemark)
- virt-admin: Properly fix the default session daemon URI to admin server (Erik Skultety)
- admin: Fix the default uri for session daemon to libvirtd:///session (Erik Skultety)
- virsystemd: Fix error check (Marc Hartmayer)
- lxcDomainCreateXMLWithFiles: Avoid crash (Michal Privoznik)
- storage: Don't remove the pool for buildPool failure in storagePoolCreate (John
Ferlan)
- storage: Fix a NULL ptr dereference in virStorageBackendCreateQemuImg (Erik Skultety)
- tests: Fix broken build (John Ferlan)
- qemu: fix capability counting (Boris Fiuczynski)
- virObjectEventNew: Use virObjectUnref() to free virObjectEvent (Michal Privoznik)
- virshConnect: Don't leak polkit agent (Michal Privoznik)
- conf: events: Fix coverity warning (Cole Robinson)
- Don't error when attaching security label of model "none" (Daniel P.
Berrange)
- qemu: only report errno in trace message on failure (Daniel P. Berrange)
- qemu: Set fake reboot flag to false when mode=agent (Nikolay Shirokovskiy)
- libxl: Fix broken build attach/detach controller device (John Ferlan)
- libxl: Fix broken build from libxlDomainCleanup (John Ferlan)
- admin: rpc: virnetserver: Fix updating of the client limits (Erik Skultety)
- libxl: fix segfault in libxlReconnectDomain (Cédric Bosdonnat)
- qemu: Fix domain state after reset (Martin Kletzander)
- virsh: Report error when explicit connection fails (Martin Kletzander)
- qemu: Fix support for startupPolicy with volume/pool disks (Martin Kletzander)
Improvements:
- tools: Don't list virsh-* under EXTRA_DIST (Michal Privoznik)
- libxl: advertise support for migration V3 (Jim Fehlig)
- virsh: vcpuinfo: Report vcpu number from the structure rather than it's position
(Peter Krempa)
- vz: getting bus type for containers (Mikhail Feoktistov)
- vz: update domain cache after device updates (Nikolay Shirokovskiy)
- vz: added VIR_MIGRATE_PARAM_BANDWIDTH param handling (Pavel Glushchak)
- vz: implicitly support additional migration flags (Pavel Glushchak)
- qemu: set tap device online for type='ethernet' (Laine Stump)
- qemu: remove unnecessary setting of tap device online state (Laine Stump)
- qemu: hotplug: Add support for VCPU unplug (Peter Krempa)
- qemu: hotplug: Allow marking unplugged devices by alias (Peter Krempa)
- qemu: Use modern vcpu hotplug approach if possible (Peter Krempa)
- qemu: command: Add support for sparse vcpu topologies (Peter Krempa)
- qemu: process: Copy final vcpu order information into the vcpu definition (Peter
Krempa)
- qemu: command: Add helper to convert vcpu definition to JSON props (Peter Krempa)
- qemu: migration: Prepare for non-contiguous vcpu configurations (Peter Krempa)
- conf: Add XML for individual vCPU hotplug (Peter Krempa)
- util: Extract and rename qemuDomainDelCgroupForThread to virCgroupDelThread (Peter
Krempa)
- qemu: domain: Prepare for VCPUs vanishing while libvirt is not running (Peter Krempa)
- qemu: domain: Extract cpu-hotplug related data (Peter Krempa)
- tests: cpu-hotplug: Add data for ppc64 without threads enabled (Peter Krempa)
- tests: cpu-hotplug: Add data for ppc64 out-of-order hotplug (Peter Krempa)
- tests: cpu-hotplug: Add data for ppc64 platform including hotplug (Peter Krempa)
- tests: cpu-hotplug: Add data for x86 hotplug with 11+ vcpus (Peter Krempa)
- tests: Add test infrastructure for qemuMonitorGetCPUInfo (Peter Krempa)
- qemu: monitor: Add algorithm for combining query-(hotpluggable-)-cpus data (Peter
Krempa)
- qemu: monitor: Add support for calling query-hotpluggable-cpus (Peter Krempa)
- qemu: monitor: Extract QOM path from query-cpus reply (Peter Krempa)
- qemu: capabilities: Extract availability of new cpu hotplug for machine types (Peter
Krempa)
- qemu: Forbid config when topology based cpu count doesn't match the config (Peter
Krempa)
- qemu: Add capability for query-hotpluggable-cpus command (Peter Krempa)
- qemu: monitor: Return struct from qemuMonitor(Text|Json)QueryCPUs (Peter Krempa)
- qemu: monitor: Return structures from qemuMonitorGetCPUInfo (Peter Krempa)
- virsh: use vshError consistently after virBufferError checks (Pino Toscano)
- virsh: avoid i18n puzzle (Pino Toscano)
- virsh: respect -q/--quiet more (Pino Toscano)
- vz: add ACL checks to API calls (Nikolay Shirokovskiy)
- remote: rename protocol names for close callbacks (Nikolay Shirokovskiy)
- vz: prepare migration for ACL checks (Nikolay Shirokovskiy)
- vz: expand setting memory API calls (Nikolay Shirokovskiy)
- vz: add missing flagged versions of API functions (Nikolay Shirokovskiy)
- vz: factor out converting block stats to params (Nikolay Shirokovskiy)
- vz: factor out block stats impl (Nikolay Shirokovskiy)
- vz: implement plain create API thru createFlags instead of visa versa (Nikolay
Shirokovskiy)
- vz: expand start/stop/... APIs for ACL checks (Nikolay Shirokovskiy)
- network: allow limiting a <forwarder> element to certain domains (Laine Stump)
- network: allow disabling dnsmasq's DNS server (Laine Stump)
- network: new network forward mode 'open' (Laine Stump)
- vz: add validation callbacks (Mikhail Feoktistov)
- vz: specify VIR_DOMAIN_NET_TYPE_NETWORK for routed networks (Maxim Nestratov)
- vz: reset errors after ignoring return values (Maxim Nestratov)
- vz: don't fail query domain info in case we don't have valid stats handle (Maxim
Nestratov)
- vz: get additional error information from job correctly (Maxim Nestratov)
- cfg.mk: join not_streq and not_strneq tests (Ján Tomko)
- cfg.mk: drop redundant sc_prohibit_gethostby (Ján Tomko)
- cfg.mk: use subst instead of tr (Ján Tomko)
- tests: fix the return value of test-wrap-argv (Ján Tomko)
- maint: update to latest gnulib (Ján Tomko)
- Introduce QEMU_CAPS_VIRTIO_PCI_DISABLE_LEGACY (Ján Tomko)
- conf: Provide error on undefined vcpusched entry (John Ferlan)
- qemu_process: graphics: reserve port only if listen type is address or network (Pavel
Hrdina)
- qemu_process: graphics: extract for loop out of qemuProcessGraphicsReservePorts (Pavel
Hrdina)
- qemu_process: graphics: extract port allocation into function (Pavel Hrdina)
- qemu_process: graphics: ref driver config only in function where it is used (Pavel
Hrdina)
- util: Make virStringArrayHasString() const-correct (Andrea Bolognani)
- qemu: driver: Split out regular vcpu hotplug code into a function (Peter Krempa)
- qemu: driver: Extract setting of live vcpu count (Peter Krempa)
- qemu: setvcpus: Extract setting of maximum vcpu count (Peter Krempa)
- conf: report an error message for non-existing USB hubs (Ján Tomko)
- qemu: setcpus: Report better errors (Peter Krempa)
- libxl_driver: Indent LIBXL_VBD_SECTOR_SIZE macro correctly (Michal Privoznik)
- Introduce node device update event as top level event (Jovanka Gulicoska)
- qemu_command: don't modify heads for graphics device (Pavel Hrdina)
- qemu: command: Simplify USB controller model selection (Andrea Bolognani)
- qemu: domain: Drop piix3-ohci controller for migration (Andrea Bolognani)
- qemu: domain: Reflect USB controller model in guest XML (Andrea Bolognani)
- virNetDevMacVLanCreateWithVPortProfile: Drop @ret (Michal Privoznik)
- virNetDevMacVLanCreateWithVPortProfile: Drop @rc (Michal Privoznik)
- tests: Add a test for host-model CPU with CMT feature (Jiri Denemark)
- cpu_x86: Properly drop non-migratable features (Jiri Denemark)
- cpu_x86: Introduce x86FeatureIsMigratable (Jiri Denemark)
- virsh: Introduce nodedev-event command (Jovanka Gulicoska)
- vz: add vzDomainGetJobStats (Nikolay Shirokovskiy)
- vz: add getting job info for migration (Nikolay Shirokovskiy)
- Fix indentation (Ján Tomko)
- qemu: Add tests for virQEMUCapsNewCopy (Jiri Denemark)
- qemu: Copy missing QEMU caps elements (Jiri Denemark)
- qemu: Copy QEMU caps elements in order of definition (Jiri Denemark)
- tests: qemucapabilities: Add data for qemu 2.7.0 (Peter Krempa)
- internal: Introduce macro for stealing pointers (Peter Krempa)
- qemu: Advertise OVMF_CODE.secboot.fd (Michal Privoznik)
- qemu: Enable secure boot (Michal Privoznik)
- Introduce @secure attribute to os loader element (Michal Privoznik)
- Introduce SMM feature (Michal Privoznik)
- qemuBuildMachineCommandLine: Follow our pattern (Michal Privoznik)
- rpm: set TLS priority to @LIBVIRT,SYSTEM on Fedora >= 25 (Daniel P. Berrange)
- tests: qemuxml2xml: Add some USB test cases (Andrea Bolognani)
- tests: qemuxml2xml: Use DO_TEST() for most tests (Andrea Bolognani)
- tests: qemuxml2xml: Pass capabilities to DO_TEST() (Andrea Bolognani)
- tests: qemuxml2xml: Use WHEN_BOTH for most tests (Andrea Bolognani)
- tests: qemuxml2xml: Clean up disk-mirror (Andrea Bolognani)
- tests: qemuxml2argv: Fix usb-too-long-port-path-invalid (Andrea Bolognani)
- tests: qemuxml2argv: Remove useless GIC flags (Andrea Bolognani)
- libxlDoMigrateReceive: Drop useless check for !vm (Michal Privoznik)
- securityselinuxlabeltest: Prefer virGetLastErrorMessage() over virGetLastError (Michal
Privoznik)
- virqemu: Reflect return type of virJSONValueArraySize() (Michal Privoznik)
- qemu: domain: Simplify return values of qemuDomainRefreshVcpuInfo (Peter Krempa)
- qemu: domain: Improve vCPU data checking in qemuDomainRefreshVcpu (Peter Krempa)
- qemu: monitor: Rename qemuMonitor(JSON|Text)GetCPUInfo (Peter Krempa)
- qemu: domain: Rename qemuDomainDetectVcpuPids to qemuDomainRefreshVcpuInfo (Peter
Krempa)
- qemu: Improve error message in virDomainGetVcpus (Peter Krempa)
- qemu: monitor: Add do-while block to QEMU_CHECK_MONITOR_FULL (Peter Krempa)
- qemu: monitor: Add monitor API for device_add supporting JSON objects (Peter Krempa)
- libxl: allow libxl to calculate shadow mem requirements (Jim Fehlig)
- qemu: Add support to get/set IOThread period and quota cgroup values (John Ferlan)
- conf: Add IOThread quota and period scheduler/cputune defs (John Ferlan)
- virsh: qemu-monitor-command: Don't print extra newline with --pretty (Peter Krempa)
- tests: Make schema test fail on XML schema errors (Peter Krempa)
- remote: Fix indentation of the remote protocol structs check file (Peter Krempa)
- qemu: Use the hostdev alias in qemuDomainAttachHostSCSIDevice error path (John Ferlan)
- qemu: Use qemuAliasFromHostdev (John Ferlan)
- qemu: Introduce qemuAliasFromHostdev (John Ferlan)
- qemu: Add attempt to call qemuMonitorDriveDel for AttachSCSI failure path (John Ferlan)
- qemu: Add attempt to call qemuMonitorDriveDel for USB failure path (John Ferlan)
- qemu: Make QEMU_DRIVE_HOST_PREFIX more private (John Ferlan)
- qemu: Use qemuAliasFromDisk to generate drive alias (John Ferlan)
- qemu: Use qemuAliasFromDisk instead of qemuDeviceDriveHostAlias (John Ferlan)
- qemu: Use qemuAliasFromDisk to generate drive alias (John Ferlan)
- qemu: Remove generation of drive alias from qcow passphrase backends (John Ferlan)
- qemu: Reorder qemuDomainAttachUSBMassStorageDevice failure path (John Ferlan)
- event-test: support node device lifecycle event APIs (Jovanka Gulicoska)
- node_device: Implement event queue in udev (Jovanka Gulicoska)
- node_device: implement node device lifecycle event APIs (Jovanka Gulicoska)
- remote: implement node device lifecycle event APIs (Jovanka Gulicoska)
- test: implement node device lifecycle event APIs (Jovanka Gulicoska)
- conf: add node_device_event handling (Jovanka Gulicoska)
- Introduce node device lifecycle event APIs (Jovanka Gulicoska)
- qemu: Set fake reboot flag only in acpi mode for shutdown (Nikolay Shirokovskiy)
- rpc: virnetserver: Remove dead code checking the client limits (Erik Skultety)
- rpc: virnetserver: Add code to CheckLimits to handle suspending of services (Erik
Skultety)
- rpc: virnetserver: Move virNetServerCheckLimits which is static up in the file (Erik
Skultety)
- rpc: virnetserver: Rename ClientSetProcessingControls to ClientSetLimits (Erik
Skultety)
- libxl: add hooks support (Cédric Bosdonnat)
- libxl: add a flag to mark guests as tainted by a hook (Cédric Bosdonnat)
- qemuDomainDeviceDefPostParse: add USB controller model check (Chunyan Liu)
- xenconfig: add conversion of usb controller config to and from xml (Chunyan Liu)
- libxl: check available controller and port when hotplugging USB device (Chunyan Liu)
- libxl: support usb controller hotplug (Chunyan Liu)
- libxl: support USB controllers in creation time (Chunyan Liu)
- extend usb controller model to support xen pvusb (Chunyan Liu)
- virsh: qemu-monitor-command: Simplify control flow (Peter Krempa)
- virsh: qemu-monitor-command: Use macro for exclusive options (Peter Krempa)
- qemu: cap: Refactor access to array in virQEMUCapsProbeQMPMachineTypes (Peter Krempa)
- qemu: caps: Sanitize storage of machine type related data (Peter Krempa)
- qemu: capabilities: Drop unused function virQEMUCapsGetMachineTypes (Peter Krempa)
- storage: Clean up volume wiping (Martin Kletzander)
- storage: Use path instead of volume as an argument (Martin Kletzander)
- storage: Move functions around (Martin Kletzander)
- qemu: Remove unnecessary label and its only reference (Martin Kletzander)
- qemu: Make qemuDomainCheckDiskStartupPolicy self-contained (Martin Kletzander)
- Post-release version bump to 2.2.0 (Michal Privoznik)
- Fix unbalanced quotation marks (Yuri Chornoivan)
thanks everybody who helped putting this release out, be it with ideas, code, reviews,
bug reports, localization, docs, etc...
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/