As planned a new release is out, just in time for the OpenStack Summit.
It is tagged in git and available as signed rpms and tarballs at the
usual place:
ftp://libvirt.org/libvirt/
This is a slightly smaler than usual release, around 200 commits,
probably due top the KVM forum last month :-)
Notable improvements pushed for the vbox driver, some changes too
for the libxl one, and a big refectoring of the driver internals
though that should not be user visible. And as usual a large amount of
bug fixes and improvements:
Features:
- vbox: various drivers improvements (Taowei Luo)
- libxl: various drivers improvements (Stefan Bader)
- Internal driver refactoring (Daniel P. Berrange)
Documentation
- virsh: Adjust the text in man page regarding qemu-attach (John Ferlan)
- HACKING: Regenerate after recent change (Peter Krempa)
- fix an improper git browsable address (Chen Hanxiao)
- Mention repository locations in contributor guidelines (Martin Kletzander)
- apps: Update references to virt-p2v and virt-v2v. (Richard W.M. Jones)
- libvirt: Document UNDEFINE_NVRAM in UndefineFlags doc (Cole Robinson)
- conf: fix a wrong comment in virSocketAddrNumericFamily() (Chen Fan)
- virsh: man: Fix description of --live/--config usage (Peter Krempa)
- qemu: add short document on qemu event handlers (Laine Stump)
- fix a typo in drvlxc (Chen Hanxiao)
Portability:
- mingw: fix build failure (Pavel Hrdina)
- domain: fix parsing of memory tunables on 32-bit machines (Eric Blake)
- virnetdev: stub virNetDev{Add,Del}Multi on FreeBSD (Roman Bogorodskiy)
- Renamed internal __mon_yday into mon_yday to avoid conflicts (Cédric Bosdonnat)
- Fix build-time pkg-config files in VPATH (Jiri Denemark)
- Fix build with older libcurl (Ján Tomko)
- vbox: remove unused code that causes build failures (Martin Kletzander)
- Makefile: Fix build without driver modules (Michal Privoznik)
- build: fix build on non-Linux (Eric Blake)
- qemu: monitor: Avoid shadowing variable "devname" on FreeBSD. Again. (Peter
Krempa)
Bug Fixes:
- hotplug: fix char device detach (Pavel Hrdina)
- vbox_storage: fix coverity issue with overwriting value (Pavel Hrdina)
- Relax duplicate SCSI host pool checking (Ján Tomko)
- qemu: Release nbd port from migrationPorts instead of remotePorts (weiwei li)
- libxl: fix double-free of libxl_domain_build_info (Jim Fehlig)
- Reject live update of offloading options (Ján Tomko)
- conf: forbid negative values in virDomainParseScaledValue (Martin Kletzander)
- virsh: Fix memory leak in cmdNetworkDHCPLeases (Luyao Huang)
- virutil: fix virGetSCSIHostNumber stub return type (Roman Bogorodskiy)
- virnetdev: Resolve Coverity RESOURCE_LEAK (John Ferlan)
- virnetdev: Resolve Coverity FORWARD_NULL (John Ferlan)
- virnetdev: Resolve Coverity DEADCODE (John Ferlan)
- storage: Fix crash when parsing backing store URI with schema (Peter Krempa)
- src/Makefile.am: Add forgotten backslash (Michal Privoznik)
- storage_conf: Resolve libvirtd crash matching scsi_host (John Ferlan)
- qemu-attach: Assign device aliases (John Ferlan)
- hotplug: Check for alias in net detach (John Ferlan)
- hotplug: Check for alias in chrdev detach (John Ferlan)
- hotplug: Check for alias in hostdev detach (John Ferlan)
- hotplug: Check for alias in disk detach (John Ferlan)
- hotplug: Check for alias in controller detach (John Ferlan)
- remote: fix jump depends on uninitialised value (Jincheng Miao)
- qemu: forbid snapshot-delete --children-only on external snapshot (Eric Blake)
- util: eliminate "use after free" in callers of virNetDevLinkDump (Laine
Stump)
- vbox: network: make sure driver is not NULL in virRegisterNetworkDriver (Shanzhi Yu)
- hyperv: avoid query memleaks on failure (Eric Blake)
- qemu: Disallow NUMA/network tuning for session mode (Erik Skultety)
- qemu: restore: Fix restoring of VM when the restore hook returns empty XML (Peter
Krempa)
- Fix cast errors with clang (Roman Bogorodskiy)
- qemu: unref cfg after TerminateMachine has been called (Martin Kletzander)
- qemu: x86_64 is good enough for i686 (Lubomir Rintel)
- qemu: move setting emulatorpin ahead of monitor showing up (Zhou yimin)
- tests: fix incorrect caps for shmem-invalid-size, shmem-small-size (Maxime Leroy)
- conf: tests: fix virDomainNetDefFormat for vhost-user in client mode (Maxime Leroy)
- libxl: add missing 'break' from commit 1298daca (Jim Fehlig)
- conf: fix an memory leak in virSocketAddrIsNumericLocalhost() (Chen Fan)
- virsh: domain: Use global constant for XML file size limit (Peter Krempa)
- Fix leftover typo '&' -> '&&' (Martin Kletzander)
- qemu: save domain status after set domain's numa parameters (Shanzhi Yu)
- qemu: call qemuDomainObjBeginJob/qemuDomainObjEndJob in qemuDomainSetInterfaceParameters
(Shanzhi Yu)
- qemu: save domain status after set the blkio parameters (Shanzhi Yu)
- security_selinux: Don't relabel /dev/net/tun (Michal Privoznik)
- qemu: Remove possible NULL deref in debug output (John Ferlan)
- qemu: Remove need for virConnectPtr in hotunplug detach host, net (John Ferlan)
- qemu: Fix hot unplug of SCSI_HOST device (John Ferlan)
- util: Prepare URI formatting for libxml2 >= 2.9.2 (Martin Kletzander)
- qemu: Don't compare CPU against host for TCG (Cole Robinson)
- qemu: Fix updating balloon period in live XML (Erik Skultety)
- qemu: Fix updating bandwidth limits in live XML (Erik Skultety)
- qemu: json: Fix missing break in error reporting function (Peter Krempa)
Improvements:
- Match scsi_host pools by parent address first (Ján Tomko)
- libxl: Support user-specified <emulator> (Jim Fehlig)
- Spell TIOCSCTTY right in the error message (Ján Tomko)
- Teach virt-aa-helper to use TEMPLATE.qemu if the domain is kvm or kqemu (Cédric
Bosdonnat)
- qemu: better error message when block job can't succeed (Eric Blake)
- test: Add test to verify helpers used for backing file name parsing (Peter Krempa)
- maint: add syntax check to prohibit static zero init (Eric Blake)
- maint: avoid static zero init in drivers (Eric Blake)
- maint: avoid static zero init in helpers (Eric Blake)
- maint: avoid static zero init in tests (Eric Blake)
- maint: avoid static zero init in tools (Eric Blake)
- maint: avoid static zero init in core files (Eric Blake)
- audit: use bool for audit log choice (Eric Blake)
- virutil: Introduce virGetSCSIHostNameByParentaddr (John Ferlan)
- virutil: Introduce virGetSCSIHostNumber (John Ferlan)
- vbox: Rewrite vboxStorageVolGetPath (Taowei Luo)
- vbox: Rewrite vboxStorageVolGetXMLDesc (Taowei Luo)
- vbox: Rewrite vboxStorageVolGetInfo (Taowei Luo)
- vbox: Rewrite vboxStorageVolDelete (Taowei Luo)
- vbox: Make IMediumAttachment work with vbox2.2 and 3.0 (Taowei Luo)
- vbox: Rewrite vboxStorageVolCreateXML (Taowei Luo)
- vbox: Make CreateHardDisk support all vbox versions (Taowei Luo)
- vbox: Rewrite vboxStorageVolLookupByPath (Taowei Luo)
- vbox: Make FindMedium support old vbox versions (Taowei Luo)
- vbox: Rewrite vboxStorageVolLookupByKey (Taowei Luo)
- vbox: Rewrite vboxStorageVolLookupByName (Taowei Luo)
- vbox: Rewrite vboxStoragePoolListVolumes (Taowei Luo)
- vbox: Rewrite vboxStoragePoolNumOfVolumes (Taowei Luo)
- vbox: Rewrite vbox-independent functions (Taowei Luo)
- vbox: move common codes to vbox_common.h (Taowei Luo)
- vbox: Remove VBOX_OBJECT_CHECK macro (Taowei Luo)
- vbox: Fix copyright mistake (Taowei Luo)
- virsh: Improve the job type reported of virsh cmd blockcommit (Shanzhi Yu)
- qemu_agent: Produce more readable error messages (Michal Privoznik)
- qemu: change macvtap multicast list in response to NIC_RX_FILTER_CHANGED (Tony Krowiak)
- util: Functions to update host network device's multicast filter (Tony Krowiak)
- tests: Add SELINUX_LIBS to fix viridentitytest linker bug (Julio Faracco)
- Add new driver-*.h files to DRIVER_SOURCES (Daniel P. Berrange)
- Fix indentation of sysinfo data (Daniel P. Berrange)
- Fix preprocessor indentation in libvirt.h.in (Daniel P. Berrange)
- Move virConnect related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virDomain related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virEvent related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virStoragePool/Vol related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virStream related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virSecret related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virNodeDevice related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virNWFilter related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virInterface related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virNetwork related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virDomainSnapshot related APIs out of libvirt.h.in (Daniel P. Berrange)
- Move virConnect/virNode related APIs out of libvirt.c (Daniel P. Berrange)
- Move virDomain related APIs out of libvirt.c (Daniel P. Berrange)
- Make virTypedParameterValidateSet non-static (Daniel P. Berrange)
- Move virStorage{Pool,Vol} related APIs out of libvirt.c (Daniel P. Berrange)
- Move virStream related APIs out of libvirt.c (Daniel P. Berrange)
- Move virSecret related APIs out of libvirt.c (Daniel P. Berrange)
- Move virNodeDevice related APIs out of libvirt.c (Daniel P. Berrange)
- Move virNWFilter related APIs out of libvirt.c (Daniel P. Berrange)
- Move virInterface related APIs out of libvirt.c (Daniel P. Berrange)
- Move virNetwork related APIs out of libvirt.c (Daniel P. Berrange)
- Move virDomainSnapshot related APIs out of libvirt.c (Daniel P. Berrange)
- Split driver.h into multiple parts (Daniel P. Berrange)
- Rename virDriver to virHypervisorDriver (Daniel P. Berrange)
- qemu: migration: Make check for empty hook XML robust (Peter Krempa)
- util: string: Add helper to check whether string is empty (Peter Krempa)
- Add support for /run/initctl (Rick Harris)
- qemu: Convert qemuDomainUpdateDeviceConfig to typecasted enum (Peter Krempa)
- qemu: Convert qemuDomainDetachDeviceConfig to typecasted enum (Peter Krempa)
- qemu: Convert qemuDomainAttachDeviceConfig to typecasted enum (Peter Krempa)
- qemu: Convert qemuDomainUpdateDeviceLive to typecasted enum (Peter Krempa)
- qemu: Convert qemuDomainDetachDeviceLive to typecasted enum (Peter Krempa)
- conf: Move definition of virDomainParseMemory (Peter Krempa)
- Implement empty post parse callbacks for all drivers (Peter Krempa)
- qemu: monitor: Add functions for object hot-add/remove (Peter Krempa)
- util: json: Add option to skip adding a JSON object if it is NULL (Peter Krempa)
- util: json: Improve handling and docs for adding JSON objects (Peter Krempa)
- util: json: Split out code to create json value objects (Peter Krempa)
- qemu: hotplug: Use typecasted switch statement when plugging new devices (Peter Krempa)
- conf: Add compile time check that devices were checked for ABI stability (Peter Krempa)
- conf: shmem: Add ABI stability check (Peter Krempa)
- conf: Improve adding of new address types (Peter Krempa)
- conf: Check whether migration_address is localhost (Chen Fan)
- conf: add check if migration_host is a localhost address (Chen Fan)
- migration: add migration_host support for IPv6 address without brackets (Chen Fan)
- Introduce virStringStripIPv6Brackets (Ján Tomko)
- conf: improve the comments for "xmlopt" (Wang Rui)
- libxl: Add function to determine device model type (Jim Fehlig)
- Xen: Defer setting default vram value to Xen drivers (Jim Fehlig)
- libxl: Copy user-specified keymap to libxl build info struct (Jim Fehlig)
- esx: Implement virDomainScreenshot using libcurl stream driver (Matthias Bolte)
- esx: Add libcurl based stream driver (Matthias Bolte)
- qemu: change macvtap device MAC address in response to NIC_RX_FILTER_CHANGED (Laine
Stump)
- qemu: setup infrastructure to handle NIC_RX_FILTER_CHANGED event (Laine Stump)
- qemu: qemuMonitorQueryRxFilter - retrieve guest netdev rx-filter (Laine Stump)
- util: define virNetDevRxFilter and basic utility functions (Laine Stump)
- network: set interface actual trustGuestRxFilters from network/portgroup (Laine Stump)
- conf: add trustGuestRxFilters attribute to network and domain interface (Laine Stump)
- maint: update .mailmap (Eric Blake)
- Include .libs in libdir in source tree pkg-config files (Ján Tomko)
- minor shmem clean-ups (Martin Kletzander)
- qemu: Build command line for ivshmem device (Martin Kletzander)
- qemu: add capability probing for ivshmem device (Maxime Leroy)
- docs, conf, schema: add support for shmem device (Martin Kletzander)
- qemu: support nospace reason in io error event (Eric Blake)
- qemu_command: Split qemuBuildCpuArgStr (Cole Robinson)
- configure: improve misleading libnl3-devel missing error message (Shanzhi Yu)
- qemu: Improve domainSetTime error info report (Shanzhi Yu)
- vbox: Rewrite vboxNetworkGetXMLDesc (Taowei)
- vbox: Rewrite vboxNetworkCreate (Taowei)
- vbox: Rewrite vboxNetworkUndefineDestroy (Taowei)
- vbox: Rewrite vboxNetworkDefineCreateXML (Taowei)
- vbox: Rewrite vboxNetworkLookupByName (Taowei)
- vbox: Rewrite vboxNetworkLookupByUUID (Taowei)
- vbox: Rewrite vboxConnectListDefinedNetworks (Taowei)
- vbox: Rewrite vboxConnectNumOfDefinedNetworks (Taowei)
- vbox: Rewrite vboxConnectListNetworks (Taowei)
- vbox: Rewrite vboxConnectNumOfNetworks (Taowei)
- vbox: Rewrite vboxNetworkClose (Taowei)
- vbox: Rewrite vboxNetworkOpen (Taowei)
- vbox: Interfaces for register per parties (Taowei)
- Add virCgroupTerminateMachine stub (Ján Tomko)
- Make editor used for 'virsh edit' configurable (Guido Günther)
- qemu: use systemd's TerminateMachine to kill all processes (Guido Günther)
- maint: Prohibit "devname" by a syntax check rules (Peter Krempa)
- qemu: bulk stats: add block allocation information (Francesco Romani)
- qemu: monitor: Add helper function to fill physical/virtual image size (Peter Krempa)
Cleanups:
- vbox: Remove unused things in vbox_tmpl.c (Taowei Luo)
- Cleanup maintainers list (Jiri Denemark)
So thanks everybody for your help with this release be it with reports
ideas, patches, reviews or documentation !
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/