Releases (2016)
Here is the list of official releases made during the year 2016.
A similar list for 2015 is also available.
It is also possible to just use
the GIT version or snapshot,
contact the mailing list and check
the GIT log
to gauge progress.
1.3.1: Jan 17 2016
- 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),