As planned I just tagged the release in git and pushed signed tarball and rpms to the usual place: ftp://libvirt.org/libvirt/ I also tagged and pushed a python release though there is no change from 1.3.0: ftp://libvirt.org/libvirt/python/ This is a moderately large release with close to 300 commits packed in, one security patch for CVE-2015-5313, and some user visible feature improvement. There is also a lot of refactoring in code, makefiles etc along with other improvements and the usual flow of bug fixes: Features: - Various improvements for the Xen libxl driver (Jim Fehlig) - rbd: Add support for wiping and cloning images to storage driver (Wido den Hollander) - PCI hostdev improvements and fixes (Andrea Bolognani) Security: - CVE-2015-5313: storage: don't allow '/' in filesystem volume names (Eric Blake) Documentation: - virsh: Update description of lxc-enter-namespace (Guido Günther) - virsh: Document the --timestamp option (Andrea Bolognani) - docs: update to properly reflect meaning of fields in log filter (Laine Stump) - virStorageVolWipe: Document that wiping journaled FS is useless (Michal Privoznik) - storage: Add comments for backend APIs (John Ferlan) Portability: - build: fix distdir with wireshark disabled (Cole Robinson) - wireshark: Install into DESTDIR (Michal Privoznik) - cgroup: don't include sys/mount.h if not needed (Jasper Lievisse Adriaanse) - tools: Disable virt-login-shell on mingw (Michal Privoznik) - sysconf: Include unistd.h (Michal Privoznik) - Allow building lxc without virt-login-shell (Cédric Bosdonnat) - build: disable vbox on cygwin (Eric Blake) - virNetDevMacVLanTapSetup: Work around older systems (Michal Privoznik) Bug Fixes: - security: Do not restore labels on device tree binary (Jiri Denemark) - security: Do not restore kernel and initrd labels (Jiri Denemark) - cgroup: Fix possible bug as a result of code motion for vcpu cgroup setup (John Ferlan) - Revert "lxc_cgroup: Add check for NULL cgroup before AddTask call" (John Ferlan) - Revert "util: cgroups do not implicitly add task to new machine cgroup" (John Ferlan) - Revert "qemu: do not put a task into machine cgroup" (John Ferlan) - virt-aa-helper: don't deny writes to readonly mounts (Cédric Bosdonnat) - conf: Initialize 'deflate' for balloon parse XML (John Ferlan) - wireshark: Drop DESTDIR from install path (Michal Privoznik) - qemuProcessCleanupChardevDevice: Don't unlink NULL paths (Michal Privoznik) - xenconfig: check return value of regcomp (Jim Fehlig) - Xen: use correct domctl version in domaininfolist union (Jim Fehlig) - testutils: Fix coverity warning with REGENERATE_OUTPUT (Cole Robinson) - rpc: socket: Don't repeatedly attempt to launch daemon (Cole Robinson) - rpc: socket: Explicitly error if we exceed retry count (Cole Robinson) - rpc: Don't rewrite msg->fds on every read dispatch (Ben Gray) - util: eliminate bogus error log in virNetDevVPortProfileGetStatus (Laine Stump) - qemu: Set virtio channel state sooner (Michal Privoznik) - virDomainGetTime: Deny on RO connections (Michal Privoznik) - virDomainInterfaceAddresses: Allow API on RO connection too (Michal Privoznik) - Don't clear libvirt-internal paths when parsing status XML (Martin Kletzander) - virDomainMigrateUnmanagedParams: Don't blindly dereference @dconnuri (Michal Privoznik) - Fix USB model defaults for ppc64 (Martin Kletzander) - Avoid wild securityManager pointer in tests (Martin Kletzander) - tests: Fix running schematests directly from topdir (Cole Robinson) - qemu: Fix crash when defining XML with bogus emulator (Cole Robinson) - tests.nwfilterebiptablestest: swap actual and expected (Pavel Hrdina) - qemu: Fix NBD migration with default listenAddress (Jiri Denemark) - virLogVMessage: Don't leak rawinitmsg (Michal Privoznik) - virLogHostnameString: Don't leak hostname (Michal Privoznik) - virsh: Interrupt *event --loop on disconnect (Jiri Denemark) - virsh: Pass ctl to virshCatchDisconnect (Jiri Denemark) - qemu: Don't bother user with libvirt-internal paths (Martin Kletzander) - rbd: Do not append Ceph monitor port number 6789 if not provided (Wido den Hollander) - rbd: Do not error out on a single image during pool refresh (Wido den Hollander) - rbd: Only close RBD image if it has been opened (Wido den Hollander) - fix LSB part of virtlogd runlevel script (Olaf Hering) - virtlogd: fix lock file path in initscript (Michael Chapman) - spec: chkconfig(8) and service(8) are in /sbin/, not /bin/ (Michael Chapman) - spec: dbus-devel is needed as build dependency if polkit support is enabled (Michael Chapman) - storage: Clean up error path for create buildPool failure (John Ferlan) - libvirt-domain: fix dxml passing in virDomainMigrateToURI2 (Ján Tomko) - schema: interleave domain name and uuid with other elements (Ján Tomko) - qemu: Fix return value of qemuDomainGetBlockJobInfo (Michal Privoznik) - storage: do not leak storage pool XML filename (Michael Chapman) - qemu: do not leak NBD disk data in migration cookie (Michael Chapman) - qemu: do not copy out non-existent block job info (Michael Chapman) - vz: BUG: fix connecting hang in case of init failure (Maxim Nestratov) - storage: Fix startup issue for logical pool (John Ferlan) - qemu: Fix event generated for qemuDomainRevertToSnapshot (pause->run) (John Ferlan) - storage: Check FS pool source during virStorageBackendFileSystemIsMounted (John Ferlan) - qemuMonitorJSONEjectMedia: Don't leak stringified reply (Michal Privoznik) - virNetDevMacVLanTapSetup: Drop @multiqueue argument (Michal Privoznik) - qemu: Warn when using vhost-user without shared memory (Martin Kletzander) - storage: Ignore block devices that fail format detection (John Ferlan) - storage: Set ret = -1 on failures in virStorageBackendUpdateVolTargetInfo (John Ferlan) - qemu: cgroup: Don't use priv->ncpupids to iterate domain vCPUs (Peter Krempa) - qemu: cpu hotplug: Fix error handling logic (Peter Krempa) - qemu: qemuDomainSetVcpusAgent: re-check agent before calling it the again (Peter Krempa) - libxl: copy persistent domain definition while starting a guest (Pavel Hrdina) - xen: fix timer bug found by updated test (Pavel Hrdina) Improvements: - qemu: Print better warning in qemuAgentNotifyEvent (Yaniv Kaul) - build: Kill tools/wireshark Makefiles (Cole Robinson) - Expand $(wildcard) correctly (Michal Privoznik) - qemu: add support of optional 'autodeflate' attribute (Dmitry Andreev) - qemu: add capability check for memballoon 'deflate-on-oom' feature (Dmitry Andreev) - conf: introduce 'autodeflate' attribute for memballoon device (Dmitry Andreev) - rpc: socket: Minor cleanups (Cole Robinson) - Add missing virxdrdefs.h include to log_protocol (Roman Bogorodskiy) - virsh: Fix alignment in VIRSH_COMMON_OPT_CONFIG definition (Andrea Bolognani) - virsh: Create macro for common "interface" option (John Ferlan) - virsh: Create macro for common "network" option (John Ferlan) - virsh: Create macros for common "vol" options (John Ferlan) - virsh: Create macro for common "file" option (John Ferlan) - virsh: Create macro for common "current" option (John Ferlan) - virsh: Create macro for common "live" option (John Ferlan) - virsh: Create macro for common "config" option (John Ferlan) - virsh: Create macro for common "persistent" option (John Ferlan) - virsh: Create macro for common "domain" option (John Ferlan) - virsh: Adjustments for the VIRSH_COMMON_OPT_POOL (John Ferlan) - virsh: Convert VSH_POOL_ macro to VIRSH_COMMON_OPT_ (John Ferlan) - qemu: use enum when setting PCI "multi" value, not 0 or 1 (Laine Stump) - qemu: auto-add a USB2 controller set for Q35 machines (Laine Stump) - qemu: define virDomainDevAddUSBController() (Laine Stump) - conf: add virDomainDefAddController() (Laine Stump) - qemu: prefer 00:1D.x and 00:1A.x for USB2 controllers on Q35 (Laine Stump) - qemu: don't assume slot 0 is unused/reserved. (Laine Stump) - Unify int types handling in protocol files (Jasper Lievisse Adriaanse) - Use struct sockpeercred when available (Jasper Lievisse Adriaanse) - build: Kill docs/schemas/Makefile.am (Cole Robinson) - build: Kill include/libvirt/Makefile.am (Cole Robinson) - wireshark: Fix header of get_message_len() (Michal Privoznik) - wireshark: Replace WIRESHARK_COMPAT with actual version comparison (Michal Privoznik) - wireshark: s/tvb_length/tvb_captured_length/ (Michal Privoznik) - wireshark: s/ep_alloc/wmem_alloc/ (Michal Privoznik) - wireshark: s/proto_tree_add_text/proto_tree_add_item/ (Michal Privoznik) - qemu: Introduce QEMU_CAPS_VSERPORT_CHANGE (Michal Privoznik) - qemu: change qemuFindAgentConfig return type (Michal Privoznik) - Fix LSB requirements in service script and sync them (Martin Kletzander) - virsh: Add timestamps to network events (Andrea Bolognani) - virsh: Add timestamps to QEMU monitor events (Andrea Bolognani) - Provide parse flags to PostParse functions (Martin Kletzander) - qemu: command: wire up usage of q35/ich9 disable s3/s4 (Cole Robinson) - qemu: caps: check for q35/ICH9 disable S3/S4 (Cole Robinson) - qemu: caps: Rename CAPS_DISABLE_S[34] to CAPS_PIIX_DISABLE_S[34] (Cole Robinson) - qemu: capabilities: s/Pixx/Piix/g (Cole Robinson) - examples: Use one top level makefile (Cole Robinson) - cfg.mk: Drop period after filename for indent failures (Cole Robinson) - virt-host-validate-common: Print warning on missing IOMMU (Michal Privoznik) - tests: qemuxml2xml: Wire up QEMUCaps usage (Cole Robinson) - tests: add genericxml2xmltest (Cole Robinson) - tests: qemuxml2xml: drop early file loading (Cole Robinson) - tests: Share domain XML2XML compare helper (Cole Robinson) - tests: Add newlines with VIR_TEST_REGENERATE_OUTPUT (Cole Robinson) - libxl: support vif outgoing bandwidth QoS (Jim Fehlig) - xenconfig: support vif bandwidth in xm and xl parser and formatter (Jim Fehlig) - xenconfig: support vif bandwidth in sexpr parser and formatter (Jim Fehlig) - util: add missing newline (Laine Stump) - tests: qemuxml2argv: Add tests for USB controller on q35 (Andrea Bolognani) - tests: qemuxml2xml: Convert fprintf to VIR_TEST_DEBUG (Cole Robinson) - qemu: Handle SecurityManagerVerify in post parse (Cole Robinson) - qemu: Handle CanonicalizeMachine in post parse (Cole Robinson) - qemu: domain: split out post parse default device handling (Cole Robinson) - domain: separate out function for post parse timer validation (Cole Robinson) - domain: separate out function for post parse console compat (Cole Robinson) - qemu: Refactor qemuMigrationFinish (Jiri Denemark) - qemu: Report more migration statistics (Jiri Denemark) - qemu: Create a proper type for migration status enum (Jiri Denemark) - qemu: Rename qemuMonitorMigrationStatus struct (Jiri Denemark) - qemu: Reorder migration status enum (Jiri Denemark) - tests.testutils: use virTestDifferenceFull in virtTestCompareToFile (Pavel Hrdina) - tests.testutils: use VIR_TEST_REGENERATE_OUTPUT for virTestDifferenceFull (Pavel Hrdina) - tests: add helper for VIR_TEST_REGENERATE_OUTPUT flag (Pavel Hrdina) - xen: move virDomainDefPostParse to xenParseSxpr (Pavel Hrdina) - Remove non-breaking space in comment (Martin Kletzander) - virsh: Add timestamps to events (Jiri Denemark) - virsh: Refactor event printing (Jiri Denemark) - pci: Log debug messages when manipulating the inactive list (Andrea Bolognani) - qemu: Add debug message to spice migration (Jiri Denemark) - qemu: snapshot: Skip 'transaction' command when no disks are selected (Peter Krempa) - qemu: Specify format= iff disk source is not empty (Michal Privoznik) - conf: Rework code around 'append' attribute (Dmitry Mishin) - Use tristate constants for new 'append' field (Dmitry Mishin) - docs: Describe new 'append' attribute for chardevs source (Dmitry Mishin) - Fix formatting for virDomainGetCPUStats docstring (Martin Kletzander) - maint: update to latest gnulib (Eric Blake) - util: reduce debug log in virPCIGetVirtualFunctions() (Laine Stump) - util: improve error reporting in virNetDevVPortProfileGetStatus (Laine Stump) - util: report the MAC address that couldn't be set (Laine Stump) - rbd: Return VIR_STORAGE_FILE_RAW as format for RBD volumes (Wido den Hollander) - tests: Make test-wrap-argv.pl executable (Michal Privoznik) - tools: Include PIE_LDFLAGS at the correct place (Michal Privoznik) - qemu: Process new 'append' attribute for char dev with output to a file (Dmitry Mishin) - conf: Add new 'append' attribute for chardevs with file source (Dmitry Mishin) - tests: add qemu 2.6 caps test (Dmitry Mishin) - vz: support additional flags in domain undefine (Maxim Nestratov) - vz: move prlsdkCleanupBridgedNet after domain deletion (Maxim Nestratov) - vz: delete domains when undefine is called (Maxim Nestratov) - hostdev: Emit debug messages while handling PCI hostdevs (Andrea Bolognani) - hostdev: Only rollback detach of managed devices on error (Andrea Bolognani) - hostdev: Mark PCI devices as inactive as they're detached (Andrea Bolognani) - pci: Introduce virPCIStubDriver enumeration (Andrea Bolognani) - pci: Remove 'reprobe' parameter from virPCIDeviceUnbind() (Andrea Bolognani) - pci: Remove redundant parameter from virPCIDeviceBindToStub() (Andrea Bolognani) - Revert "admin: Rename virAdmConnect to virAdmDaemon" (Erik Skultety) - Xen: support maxvcpus in xm and xl config (Jim Fehlig) - virsh: Add --delete-snapshots flag for undefine and vol-delete (John Ferlan) - libvirt: Add virStorageVolDeleteFlags to virStorageVolDelete (John Ferlan) - storage: Add virCheckFlags to virStorageBackendRBDDeleteVol (John Ferlan) - lxc_cgroup: Add check for NULL cgroup before AddTask call (John Ferlan) - Xen: remove xendConfigVersion from driver private struct (Jim Fehlig) - Xen: xenconfig: remove xendConfigVersion from public sexpr functions (Jim Fehlig) - Xen: xend: remove use of XEND_CONFIG_VERSION (Jim Fehlig) - Xen: xen_driver: remove use of XEND_CONFIG_VERSION (Jim Fehlig) - Xen: xenconfig: remove use of XEND_CONFIG_VERSION in xen_sxpr (Jim Fehlig) - Xen: tests: use latest XEND_CONFIG_VERSION in xml2sexpr tests (Jim Fehlig) - Xen: xenconfig: remove disks from '(image)' sexpr (Jim Fehlig) - Xen: tests: use latest XEND_CONFIG_VERSION in sexpr2xml tests (Jim Fehlig) - Xen: xenconfig: remove xendConfigVersion from public functions (Jim Fehlig) - Xen: xenconfig: remove use of XEND_CONFIG_VERSION in xen_xm (Jim Fehlig) - Xen: xenconfig: remove XEND_CONFIG_VERSION in common code (Jim Fehlig) - Xen: tests: use latest XEND_CONFIG_VERSION in xm/xl tests (Jim Fehlig) - Xen: tests: remove old xml2sexpr tests (Jim Fehlig) - Xen: tests: remove old sexpr2xml tests (Jim Fehlig) - Xen: tests: remove net-ioemu xm config test (Jim Fehlig) - Xen: tests: remove old xm config tests (Jim Fehlig) - virsh: Add build flags to pool-create[-as] and pool-start (John Ferlan) - virsh: Create a macro for pool-define-as and pool-create-as options (John Ferlan) - virsh: Create macro for "overwrite" and no-overwrite" options (John Ferlan) - virsh: Create macro for "file" option (John Ferlan) - virsh: Create macro for "pool" option (John Ferlan) - storage: Add flags to allow building pool during create processing (John Ferlan) - mark virDomainVirtioSerialAddrSetAddController as static. (Ján Tomko) - Remove dead code from qemuDomainAttachControllerDevice (Ján Tomko) - qemu_hotplug: remove qemuDomainAttachDeviceControllerLive (Ján Tomko) - storage: Attempt to refresh volume after successful wipe volume (John Ferlan) - virStorageBackendWipeLocal: remove bytes_wiped argument (Ján Tomko) - storage: drop 'Extent' from virStorageBackendWipeExtentLocal (Ján Tomko) - storage: move buffer allocation inside virStorageBackendWipeExtentLocal (Ján Tomko) - storage: fix return values of virStorageBackendWipeExtentLocal (Ján Tomko) - qemu: Replace Mlock with MemLock in function names (Andrea Bolognani) - qemu: Allow qemuDomainAdjustMaxMemLock() to restore previous value (Andrea Bolognani) - qemu: Reduce memlock limit after detaching PCI hostdev (Andrea Bolognani) - qemu: Use qemuDomainAdjustMaxMemLock() (Andrea Bolognani) - qemu: Add qemuDomainAdjustMaxMemLock() (Andrea Bolognani) - process: Add virProcessGetMaxMemLock() (Andrea Bolognani) - process: Allow virProcessPrLimit() to get current limit (Andrea Bolognani) - qemu: Search all nodes for shared memory access (Martin Kletzander) - pci: Use virPCIDeviceAddress in virPCIDevice (Andrea Bolognani) - libxl: Use libxentoollog in preference to libxenctrl if available. (Ian Campbell) - libxl: implement virDomainGetJobStats (Joao Martins) - libxl: implement virDomainGetJobInfo (Joao Martins) - storage: Add helper to compare logical pool def against pvs output (John Ferlan) - storage: Create helper for virStorageBackendLogicalFindPoolSources (John Ferlan) - storage: Refactor virStorageBackendFileSystemGetPoolSource (John Ferlan) - storage: Create helper to generate FS pool source value (John Ferlan) - qemu: add bootindex option to hostdev network interface commandline (Laine Stump) - security_stack: remove extra Security from function names (Ján Tomko) - security_selinux: remove extra Security from function names (Ján Tomko) - security_dac: remove extra Security from function names (Ján Tomko) - qemuMonitorJSONEjectMedia: don't stringify the replay at all (Pavel Hrdina) - pci: Use 'addr' instead of 'dev' for virPCIDeviceAddressPtr (Andrea Bolognani) - qemu cgroups: move new threads to new cgroup after cpuset is set up (Henning Schild) - qemu: do not put a task into machine cgroup (Henning Schild) - util: cgroups do not implicitly add task to new machine cgroup (Henning Schild) - util: Fixup virnetdevmacvlan.h ATTRIBUTE_NONNULL's (John Ferlan) - test: qemuxml2argv: Mock virMemoryMaxValue to remove 32/64 bit difference (Peter Krempa) - qemu: Enable multiqueue for macvtaps (Michal Privoznik) - virNetDevMacVLanCreateWithVPortProfile: Rework to support multiple FDs (Michal Privoznik) - virNetDevMacVLanTapSetup: Allow enabling of IFF_MULTI_QUEUE (Michal Privoznik) - virNetDevMacVLanTapSetup: Rework to support multiple FDs (Michal Privoznik) - virNetDevMacVLanTapOpen: Rework to support multiple FDs (Michal Privoznik) - virNetDevMacVLanTapOpen: Slightly rework (Michal Privoznik) - virNetDevMacVLanCreateWithVPortProfile: Turn vnet_hdr into flag (Michal Privoznik) - log: include hostname in initial log message (Daniel P. Berrange) - storage: Add debug message (John Ferlan) - storage: Handle readflags errors (John Ferlan) - storage: Add readflags for backend error processing (John Ferlan) - tests: scsihost: Use fakerootdir instead of fakesysfsdir (Andrea Bolognani) - tests: Use more specific names for variables (Andrea Bolognani) - tests: Rename LIBVIRT_FAKE_SYSFS_DIR to LIBVIRT_FAKE_ROOT_DIR (Andrea Bolognani) - tests: cgroupmock: Use the temporary directory as fake root (Andrea Bolognani) - tests: pcimock: Use the temporary directory as fake root (Andrea Bolognani) - tests: pcimock: Remove check for fakesysfsdir (Andrea Bolognani) - tests: scsihost: Don't set LIBVIRT_FAKE_SYSFS_DIR (Andrea Bolognani) - qemu: driver: Refactor qemuDomainHelperGetVcpus (Peter Krempa) - qemu: Add helper to retrieve vCPU pid (Peter Krempa) - qemu: Replace checking for vcpu<->pid mapping availability with a helper (Peter Krempa) - qemu: Drop checking vcpu threads in emulator bandwidth getter/setter (Peter Krempa) - qemu: cgroup: Remove now unreachable check (Peter Krempa) - conf: Add helper to get pointer to a certain vCPU definition (Peter Krempa) - conf: ABI: Split up and improve vcpu info ABI checking (Peter Krempa) - conf: turn def->vcpus into a structure (Peter Krempa) - qemu: refactor qemuDomainHotunplugVcpus (Peter Krempa) - qemu: Refactor qemuDomainHotplugVcpus (Peter Krempa) - qemu: cpu hotplug: Move loops to qemuDomainSetVcpusFlags (Peter Krempa) - qemu: monitor: Remove weird return values from qemuMonitorSetCPU (Peter Krempa) - qemu: Split up vCPU hotplug and hotunplug (Peter Krempa) - qemu: Extract vCPU onlining/offlining via agent into a separate function (Peter Krempa) - qemu: domain: Add helper to access vm->privateData->agent (Peter Krempa) - conf: Turn def->maxvcpus into size_t (Peter Krempa) - conf: Replace read accesses to def->vcpus with accessor (Peter Krempa) - conf: Move vcpu count check into helper (Peter Krempa) - conf: Replace writes to def->vcpus with accessor (Peter Krempa) - conf: Replace read access to def->maxvcpus with accessor (Peter Krempa) - conf: Add helper to check whether domain has offline vCPUs (Peter Krempa) - conf: Extract update of vcpu count if maxvcpus is decreased (Peter Krempa) - conf: Use local copy of maxvcpus in virDomainVcpuParse (Peter Krempa) - conf: Replace writes to def->maxvcpus with accessor (Peter Krempa) - xen: use virDomainDefPostParse for parsing XM/XL/SEXPR cofings (Pavel Hrdina) - lxc: use virDomainDefPostParse for parsing LXC config string (Pavel Hrdina) - vmware/vmx: use virDomainDefPostParse after parsing vmx config (Pavel Hrdina) - virsh: rename vshCommandOptString to vshCommandOptStringQuiet (Ján Tomko) - security_selinux: fix indentation (Ján Tomko) - security_dac: check if virSecurityDACGetIds returns negative (Ján Tomko) Thanks everybody for helping with this release, be it with bug reports patches, reviews, documentation and ideas ! Enjoy ! Daniel -- Daniel Veillard | Open Source and Standards, Red Hat veillard@xxxxxxxxxx | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list