Technically this is also the first release of libvirt-python
as this is the major change leading to the bump in middle version
number.
The libvirt tarballs and rpms are available at the usual place:
ftp://libvirt.org/libvirt/
while libvirt-python-1.2.0 tarball and rpms are in the new location:
ftp://libvirt.org/libvirts
of course both git trees are now tagged and development can resume.
The other 2 major user visible features are support for gluster pools
at the storage level and support for VBox 4.3 .
This is otherwise a relatively small release with less than 200 commits
with a balanced ratio of bug fixes and improvements:
Features:
- Add support for gluster pool (Eric Blake)
- Remove python binding (Daniel P. Berrange)
- vbox: add support for 4.3 APIs (Ryota Ozaki)
Documentation:
- fix typos in libvirt.h.in (Chen Hanxiao)
- Link libvirt-sandbox from apps page (Daniel P. Berrange)
- Add docs about audit subsystem logging (Daniel P. Berrange)
- virsh: fix doc typos (Nehal J Wani)
- Fix typos in various docs (Nehal J Wani)
- LXC: add securetty related note in Device nodes (Gao feng)
- Fix three minor typos (Yuri Chornoivan)
- storage: fix typo in previous patch (Eric Blake)
- storage: document gluster pool (Eric Blake)
- virDomainReboot: Document that migration might be unsafe (Michal Privoznik)
- delete extra character (Wangyufei (A))
- maint: fix comment typos. (Eric Blake)
- improve job info details (Eric Blake)
- fix a typo in formatnwfilter.html.in (Chen Hanxiao)
- Improve cgroups docs to cover systemd integration (Daniel P. Berrange)
- fix typos in libvirt.h.in (Chen Hanxiao)
- fix virDomainRestoreFlags description bug (Wang Yufei)
- grammar fixes (Eric Blake)
- add SystemTap to apps using libvirt (Jonathan Lebon)
- fix a typo in formatnwfilter (Chen Hanxiao)
- caps: Fix function docs for virCapabilitiesAddHostNUMACell (Peter Krempa)
Portability:
- tests: fix virpcitest with read-only srcdir (Eric Blake)
- tests: guarantee abs_srcdir in all C tests (Eric Blake)
- look for numad in /usr/sbin (Jim Fehlig)
- build: Don't fail on '<' or '>' with old xmllint
(Martin Kletzander)
- spec: fix libvirt-docs subpackage on RHEL-6 (Michael Chapman)
- Don't depend on syslog.service (Guido Günther)
- qemuMonitorJSONGetCPUx86Data: Don't fail on ancient qemus (Michal Privoznik)
- build: work around super-old readline.h (Ryota Ozaki)
- Fix migration with QEMU 1.6 (Michael Avdienko)
- nodeinfo: fix build on non-Linux (Eric Blake)
Bug Fixes:
- vbox: handle errors of virDomainHostdevDefAlloc correctly (Ryota Ozaki)
- vbox: fix incorrect loop condition in vboxHostDeviceGetXMLDesc (Ryota Ozaki)
- Fix memory leak in virNWFilterDefParseXML() (Nehal J Wani)
- Fix memory leak in virDomainDefParseXML() (Nehal J Wani)
- LXC: Ensure security context is set when mounting images (Daniel P. Berrange)
- network: properly update iptables rules during net-update (Laine Stump)
- Fix bug in identifying sub-mounts (Daniel P. Berrange)
- storage: skip selinux cleanup when fd not available (Eric Blake)
- qemu: preserve netdev MAC address during 'domxml-to-native' (Bing Bu Cao)
- storage: don't read storage volumes in nonblock mode (Eric Blake)
- LXC: don't unmount mounts for shared root (Gao feng)
- LXC: fix the problem that libvirt lxc fail to start on latest kernel (Gao feng)
- sasl: Fix authentication when using PLAIN mechanism (Christophe Fergeau)
- Fix invalid read in virNetSASLSessionClientStep debug log (Christophe Fergeau)
- Tie SASL callbacks lifecycle to virNetSessionSASLContext (Christophe Fergeau)
- remote: Don't leak priv->tls object on connection failure (Christophe Fergeau)
- spec: Don't save/restore running VMs on libvirt-client update (Jiri Denemark)
- virsh domxml-from-native to treat SCSI as the bus type for pseries by default
(Shivaprasad G Bhat)
- Don't start a nested job in qemuMigrationPrepareAny (Ján Tomko)
- spec: Don't save/restore running VMs on libvirt-client update (Cole Robinson)
- spec: Restrict virt-login-shell usage (Jiri Denemark)
- storage: use valid XML for awkward volume names (Eric Blake)
- storage: Returns earlier if source adapter of the scsi pool is a HBA (Osier Yang)
- libvirt-guests: Run only after libvirtd (Cole Robinson)
- Fix off-by-1 in default SELinux MCS range (Daniel P. Berrange)
- vbox: fix segfault on virsh dumpxml with the existence of USB filters (Ryota Ozaki)
- Add missing 'return 0;' in stub lxcStartFuse() method impl. (Daniel P.
Berrange)
- Avoid async signal safety problem in glibc's setxid (Daniel P. Berrange)
- Don't release spice port twice when no TLS port is available (Ján Tomko)
- Properly unref a connection with a close callback (Ján Tomko)
- qemu: Call qemuSetupHostdevCGroup later during hotplug (Jiri Denemark)
- qemuMonitorIO: Don't use @mon after it's unrefed (Michal Privoznik)
- qemuProcessReconnectHelper: Don't create joinable thread (Michal Privoznik)
- virDomainEventCallbackListFree: Don't leak @list->callbacks (Michal Privoznik)
- networkBuildDhcpDaemonCommandLine: Don't leak @configstr and @configfile (Michal
Privoznik)
- Disable nwfilter driver when running unprivileged (Ján Tomko)
- libxl: Fix Xen 4.4 libxlVmStart logic (Jason Andryuk)
- qemu: Check for presence of device and properities when getting CPUID (Peter Krempa)
- Fix busy wait loop in LXC container I/O handling (Daniel P. Berrange)
- Don't expose 'none' machine type to capabilities (Daniel P. Berrange)
- Fix mem leak in virQEMUCapsProbeQMPMachineTypes on OOM (Daniel P. Berrange)
- virSecurityLabelDefParseXML: Don't parse label on model='none' (Michal
Privoznik)
- virsh-domain: Mark --live and --config mutually exclusive in vcpucount (Peter Krempa)
- qemu: Fix SCSI hotplug on pseries guests (Vitor de Lima)
- pci: properly handle out-of-order SRIOV virtual functions (Laine Stump)
- util: use -w flag when calling iptables (Serge Hallyn)
- storage: Fix a vol-clone bug on ppc64 (Li Zhang)
- qemu: Don't access vm->priv on unlocked domain (Michal Privoznik)
- qemu: Avoid double free of VM (Michal Privoznik)
- Allow root directory in filesystem source dir schema (Ján Tomko)
- qemuMigrationBeginPhase: Check for 'drive-mirror' for NBD (Michal Privoznik)
- conf: fix incorrect error log in virCPUDefIsEqual (Chen Hanxiao)
- qemuMonitorDispose: Reset lastError (Michal Privoznik)
- qemu: clean up migration ports when migration cancelled (Zeng Junliang)
- network: fix connections count in case of allocate failure (Laine Stump)
- virpcitest: Fix variable arguments using in pci_driver_new (Michal Privoznik)
- virpci: Don't error on unbinded devices (Michal Privoznik)
Improvements:
- Pull lxcContainerGetSubtree out into shared virfile module (Daniel P. Berrange)
- Introduce standard methods for sorting strings with qsort (Daniel P. Berrange)
- conf: Export virStorageVolType enum helper functions (Peter Krempa)
- sasl: Replace 'restep' label with 'continue' (Christophe Fergeau)
- storage: probe qcow2 volumes in gluster pool (Eric Blake)
- storage: improve handling of symlinks in gluster (Eric Blake)
- storage: improve allocation stats reported on gluster files (Eric Blake)
- storage: improve directory support in gluster pool (Eric Blake)
- storage: add network-dir as new storage volume type (Eric Blake)
- storage: implement rudimentary glusterfs pool refresh (Eric Blake)
- storage: initial support for linking with libgfapi (Eric Blake)
- storage: expose volume meta-type in XML (Eric Blake)
- storage: allow interleave in volume XML (Eric Blake)
- maint: next release is 1.2.0 (Eric Blake)
- vbox: import vbox_CAPI_v4_3.h from SDK (Ryota Ozaki)
- vbox: pull vboxHostDeviceGetXMLDesc out from vboxDomainGetXMLDesc (Ryota Ozaki)
- vbox: cleanup vboxAttachUSB (Ryota Ozaki)
- lxc: don't do duplicate work when getting pagesize (Chen Hanxiao)
- maint: update to latest gnulib (Eric Blake)
- python: remove virConnectGetCPUModelNames from globals (Doug Goldstein)
- python: remove virConnectGetCPUModelNames from globals (Doug Goldstein)
- qemu: Auto-generate controller for hotplugged hostdev (Eric Farman)
- qemu: Separate calls based on controller bus type (Eric Farman)
- qemu: Rename controller hotplug functions to not be PCI-specific (Eric Farman)
- qemu: Add support for virt machine type with virtio-mmio devices on armv7 (Clark
Laughlin)
- maint: enforce comma style usage (Eric Blake)
- maint: fix comma style issues: remaining code (Eric Blake)
- maint: fix comma style issues: remaining drivers (Eric Blake)
- maint: fix comma style issues: vbox (Eric Blake)
- maint: fix comma style issues: python (Eric Blake)
- maint: fix comma style issues: util (Eric Blake)
- maint: fix comma style issues: tests, tools (Eric Blake)
- maint: fix comma style issues: qemu (Eric Blake)
- maint: fix comma style issues: xen (Eric Blake)
- maint: fix comma style issues: conf (Eric Blake)
- maint: fix comma style issues: nwfilter (Eric Blake)
- Error out on unterminated arrays and objects in JSON parser (Ján Tomko)
- Test if JSON parser fails on invalid input (Ján Tomko)
- maint: ship .pl scripts as executables (Eric Blake)
- Fix virsh net-info output for consistency (Hao Liu)
- Add missing break to switch-case block (Doug Goldstein)
- qemumonitorjsontest: Introduce GetNonExistingCPUData test (Michal Privoznik)
- Macro for testing the version you are compiling with (Doug Goldstein)
- Return -1 in virPortAllocatorAcquire if all ports are used (Ján Tomko)
- Add a name to virPortAllocator (Ján Tomko)
- storage: fix RNG validation of gluster via netfs (Eric Blake)
- virsh-secret: Unify list column alignment (Peter Krempa)
- virsh-interface: Unify list column alignment (Peter Krempa)
- virsh-nwfilter: Unify list command column alignment (Peter Krempa)
- virsh-pool: Unify spacing of listing function (Peter Krempa)
- qemu: Change return type of qemuMonitorGetGuestCPU() (Peter Krempa)
- virsh-volume: Unify strigification of volume type (Peter Krempa)
- virsh-volume: Unify alignment of vol-list output columns (Peter Krempa)
- conf: Refactor virDomainDiskSourceDefParse (Peter Krempa)
- conf: Rename virDomainDiskHostDefFree to virDomainDiskHostDefClear (Peter Krempa)
- conf: Split out code to parse the source of a disk definition (Peter Krempa)
- qemuDomainObjStart: Warn on corrupted image (Michal Privoznik)
- util: use size_t instead of unsigned int for num_virtual_functions (Laine Stump)
- qemu: assign PCI address to primary video card (Vitor de Lima)
- qemu: process: Validate specific CPUID flags of a guest (Peter Krempa)
- qemu: Add support for paravirtual spinlocks in the guest (Peter Krempa)
- conf: Refactor storing and usage of feature flags (Peter Krempa)
- cpu: x86: Add internal CPUID features support and KVM feature bits (Peter Krempa)
- qemu: Add monitor APIs to fetch CPUID data from QEMU (Jiri Denemark)
- cpu_x86: Refactor storage of CPUID data to add support for KVM features (Peter Krempa)
- tests: Distribute virpcitestdata (Michal Privoznik)
- tests: Fix virtpcitest in VPATH (Jiri Denemark)
- conf: Refactor virDomainDiskSourcePoolDefParse (Peter Krempa)
- storage: always probe type with buffer (Eric Blake)
- storage: refactor backing chain division of labor (Eric Blake)
- storage: reduce number of stat calls (Eric Blake)
- storage: avoid short reads while chasing backing chain (Eric Blake)
- storage: use simpler 'char *' (Eric Blake)
- test driver: add support for .connectBaselineCPU (Giuseppe Scrivano)
- virpcitest: Introduce testVirPCIDeviceReset (Michal Privoznik)
- virt-login-shell: also build virAtomic.h (Guido Günther)
- storage: recognize gluster as networked file (Eric Blake)
- qemu: don't use deprecated -no-kvm-pit-reinjection (Ján Tomko)
- Resolve Coverity issue regarding not checking return value (John Ferlan)
- Skip any files which are not mounted on the host (Daniel P. Berrange)
- Add flag to lxcBasicMounts to control use in user namespaces (Daniel P. Berrange)
- Remove duplicate entries in lxcBasicMounts array (Daniel P. Berrange)
- Remove pointless 'srcpath' variable in lxcContainerMountBasicFS (Daniel P.
Berrange)
- Remove unused 'opts' field from LXC basic mounts struct (Daniel P. Berrange)
- Add virFileIsMountPoint function (Daniel P. Berrange)
- virpcitest: Introduce check for unbinded devices (Michal Privoznik)
- virpcitest: Introduce testVirPCIDeviceReattach (Michal Privoznik)
- virpcitest: Test virPCIDeviceDetach (Michal Privoznik)
- tests: Introduce virpcitest (Michal Privoznik)
- cpu: x86: Parse the CPU feature map only once (Peter Krempa)
- cpu: Export few x86-specific APIs (Jiri Denemark)
- nodeinfo: Remove libnuma include (Peter Krempa)
- numa: Add wrapper of numa_node_to_cpus and use it (Peter Krempa)
- numa: Replace NUMA_MAX_N_CPUS macro with virNumaGetMaxCPUs() (Peter Krempa)
- nodeinfo: Get rid of nodeGetCellMemory (Peter Krempa)
- numa: Introduce virNumaGetNodeMemory and use it instead of numa_node_size64 (Peter
Krempa)
- numa: Introduce virNumaGetMaxNode and use it instead of numa_max_node (Peter Krempa)
- nodeinfo: Avoid forward declarations of static functions (Peter Krempa)
- numa: Introduce virNumaIsAvailable and use it instead of numa_available (Peter Krempa)
Cleanups:
- Remove obsolete 'tests' makefile target (Daniel P. Berrange)
- Mostly revert "python: remove virConnectGetCPUModelNames from globals" (Daniel
P. Berrange)
- Remove redundant braces (Ján Tomko)
- virPCIDeviceBindToStub: Remove unused @oldDriverPath and @oldDriverName (Michal
Privoznik)
Thanks to everybody who have helped on this release, with bug reports,
fixes, features or documentation updates !
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/