With a bit of delay to catch the last set of patches, the release is finally out ! You can get 0.9.7 from ftp://libvirt.org/libvirt/ This is a release mostly focusing on bug fixes and cleanup though there is some features too, including a lot of improvements on the snapshot code. There is also a notable set of portability patches, hopefully all issues raised there were fixed ! Features: - esx: Support vSphere 5.x (Patrice LACHANCE) - vbox: Add support for VirtualBox 4.1 (Matthias Bolte) - Introduce the virDomainOpenGraphics API (Daniel P. Berrange) - Add AHCI support to qemu driver (Jim Fehlig) - snapshot: many improvements and 2 new APIs (Eric Blake) - api: Add public api for 'reset' (Xu He Jie) Documentation: - Add <deviceboot> capability. (Philipp Hahn) - API: document scheduler parameter names (Eric Blake) - improve typed parameter documentation (Eric Blake) - fix typo in <disk>/<target> example (Eric Blake) - python: Fix documentation of virStream recv (Matthias Bolte) - Add documentation about migration. (Daniel P. Berrange) - Document filesystem type='block' for LXC (Ryota Ozaki) - fix incorrect info about routed networks (Laine Stump) - document managed=yes of hostdev passthrough (Eric Blake) - trivial spelling fix (Philipp Hahn) - Fix virt-sanlock-cleanup documentation (Philipp Hahn) - Fix two comments related to error handling (Philipp Hahn) - fix network XML documentation (Laine Stump) - Clarify semantics of virDomainMigrate2 (Jiri Denemark) - Update examples for probing with systemtap (Daniel P. Berrange) - fix html bug (Eric Blake) - virsh: Update the help information for undefine command. (tangchen) - Document STREQ_NULLABLE and STRNEQ_NULLABLE (Guido Günther) - Document that ff callbacks need to be invoked from a clean stack. (Guido Günther) - formatdomain.html.in: fix tickpolicy (Douglas Schilling Landgraf) - virsh: describe attach-interface parameter target (Daniel Veillard) - virsh: update man page for cpu_shares parameter (Daniel Veillard) - document node device XML (Eric Blake) - document virsh nodedev-* commands (Eric Blake) - snapshot: fix man page typos (Eric Blake) - virsh: Better document --copy-storage migrate options (Jiri Denemark) - virsh: Enhance documentation of commands starting jobs (Jiri Denemark) - virsh: Improve virsh manual for virsh memtune command (Peter Krempa) Portability: - build: fix build on platforms without ptsname_r (Eric Blake) - build: silence compiler warning on BSD (Eric Blake) - build: fix linking on BSD (Eric Blake) - remote: fix mingw32 build (Laine Stump) - build: fix deep VPATH builds (Eric Blake) - Use ENAMETOOLONG if the the socket path is longer than UNIX_PATH_MAX (Guido Günther) - build: avoid RHEL 5 build failure on LXC (Eric Blake) - build: use gnulib fdatasync (Eric Blake) - Fix virFileOpenTty definition on Win32 (Daniel P. Berrange) - compile: fix undefined reference to gnutls_x509_crt_get_dn with gcc-4.6.1 (Xu He Jie) - Fix VPATH build (Jiri Denemark) - build: fix 'make dist' error (Wen Congyang) - Fix syntax problem in mingw32-libvirt.spec.in (Daniel P. Berrange) - spec: mingw cleanups (Eric Blake) - build: fix mingw build without sasl (Eric Blake) - build: fix 'make rpm' (Eric Blake) - build: fix 'make distcheck' (Eric Blake) - disable xenlight for non-Xen platforms (Dan Horák) - build: Fix VPATH build with new probes (Jiri Denemark) - build: fix 'make distcheck' with pdwtags installed (Eric Blake) - spec: F15 still uses cgconfig, RHEL lacks hyperv (Eric Blake) Bug Fixes: - Fix sending/receiving of FDs when stream returns EAGAIN (Daniel P. Berrange) - lxc: avoid use-after-free (Eric Blake) - conf: Don't free uninitialized pointer (Jiri Denemark) - Fix default console type setting (Daniel P. Berrange) - Fix crash formatting virtio console (Daniel P. Berrange) - Fix off-by-one printing month in logging code (Daniel P. Berrange) - Add missing param initialization in qemuDomainBlockStatsFlags (Daniel P. Berrange) - fix crash when starting network (Wen Congyang) - Don't overwrite error message during VM cleanup (Daniel P. Berrange) - Correctly handle '*' in /etc/filesystems (Daniel P. Berrange) - Fix URI alias prefix matching (Wen Ruo Lv) - ServerClient: Flush cached data (Michal Privoznik) - Fix storage pool source comparison to avoid comparing with self (Daniel P. Berrange) - qemu: plug memory leak (Alex Jia) - qemu: Restore the original states of PCI device when restarting daemon (Osier Yang) - macvtap: Fix error return value convention/inconsistencies (Roopa Prabhu) - pci address conflict when virtio disk with drive type (Xu He Jie) - qemu: plug memory leak (Alex Jia) - qemu: avoid leaking uninit data from hotplug to dumpxml (Eric Blake) - util: Fix virUUIDGeneratePseudoRandomBytes (Ryota Ozaki) - lxc: Revert zeroing count of allocated items if VIR_REALLOC_N fails (Peter Krempa) - lxc: avoid null deref on lxcSetupLoopDevices failure (Alex Jia) - lxc: avoid missing '{' in the function (Alex Jia) - storage: avoid null deref on qemu-img failure (Eric Blake) - storage: make previous leak less likely to regress (Eric Blake) - storage: plug iscsi memory leak (Eric Blake) - qemu: avoid leaking uninit data from hotplug to dumpxml (Eric Blake) - qemu: Do not wait if the PCI device is not managed when reattaching (Osier Yang) - Add missing strdup return value check (Roopa Prabhu) - macvtap: avoid invalid free (Roopa Prabhu) - util: Fix typo in virGetHostname description (Jiri Denemark) - macvtap: plug memory leak for 802.1Qbh (Eric Blake) - qemu: plug memory leak on migration (Eric Blake) - conf: plug memory leak on error (Eric Blake) - storage: plug memory leak on error (Eric Blake) - util: Make getaddrinfo failure nonfatal in virGetHostname (Jiri Denemark) - qemu: fix text block info parsing (Eric Blake) - qemu: avoid text monitor null deref (Eric Blake) - qemu: check for json allocation failure (Eric Blake) - virFDStream: close also given errfd (fd leak) (Marc-André Lureau) - command: avoid fd leak on failure (Eric Blake) - qemu: Check for domain being active on successful job acquire (Michal Privoznik) - xen: Return tap2 for tap2 disks (Philipp Hahn) - xen: fix PyGrub boot device order (Philipp Hahn) - build: fix 'make check' linkage with dtrace (Eric Blake) - Fix deps for probes.o to ensure correct build ordering (Daniel P. Berrange) - If receiving a stream error, mark EOF on the stream (Daniel P. Berrange) - xen_xs: Guard against set but empty kernel argument (Guido Günther) - snapshot: avoid accidental renames with snapshot-edit (Eric Blake) - storage: Do not use comma as seperator for lvs output (Osier Yang) - qemuDomainAttach: Initialize pidfile variable (Michal Privoznik) - lxc: fix logic bug (Eric Blake) - Don't send back unknown program errors for async messages (Daniel P. Berrange) - Fix deadlock when the RPC program is unknown (Daniel P. Berrange) - remote_driver: Avoid double free in EventControl building (Michal Privoznik) - xenParseXM: don't dereference NULL pointer when script is empty (Guido Günther) - qemu: Fix migration with dname (Jiri Denemark) - virsh: do not unlink NULL file (Marc-André Lureau) - qemu: Fix error message mentioning VNC instead of SPICE (Peter Krempa) - qemu: Check for ejected media during startup and migration (Michal Privoznik) - qemu: add return value check (Alex Jia) - qemu: Always remove domain object if MigratePrepare fails (Jiri Denemark) - fix AppArmor driver for pipe character devices (Jamie Strandboge) - daemon: Don't remove pidfiles in init scripts (Peter Krempa) - storage: Do not break the whole vol lookup process in the middle (Osier Yang) - Fix synchronous reading of stream data (Daniel P. Berrange) Improvements: - Add missing defaultConsoleTargetType callback for AppArmour (Daniel P. Berrange) - Fix naming of constant for disk event (Daniel P. Berrange) - lxc: use common code for process cleanup (Eric Blake) - Set aliases for LXC/UML console devices (Daniel P. Berrange) - Default console target type with no <target> element (Daniel P. Berrange) - Add support for multiple consoles in LXC (Daniel P. Berrange) - Rewrite LXC I/O forwarding to use main event loop (Daniel P. Berrange) - Allow multiple consoles per virtual guest (Daniel P. Berrange) - virnetsockettest: Use a temporary directory in /tmp (Guido Günther) - xen: allow getting < max typed parameters (Eric Blake) - lxc: allow getting < max typed parameters (Eric Blake) - libxl: allow getting < max typed parameters (Eric Blake) - esx: allow getting < max typed parameters (Eric Blake) - qemu: allow getting < max typed parameters (Eric Blake) - Add support for probing filesystem with libblkid (Daniel P. Berrange) - Fix error message when failing to detect filesystem (Daniel P. Berrange) - Workaround for broken kernel autofs mounts (Daniel P. Berrange) - Ensure errno is valid when returning from lxcContainerWaitForContinue (Daniel P. Berrange) - Create /var/lib/libvirt/filesystems for LXC trees (Daniel P. Berrange) - esx: Support folders in the path of vpx:// connection URIs (Matthias Bolte) - qemu: pass virConnectPtr into Domain{Attach,Detach}* (Sage Weil) - vbox: Support shared folders (Matthias Bolte) - xenapi: Improve error reporting in xenapiOpen once again (Matthias Bolte) - Use a common xml type for ceph secret usage. (Josh Durgin) - storage: add auth to virDomainDiskDef (Josh Durgin) - secret: add Ceph secret type (Sage Weil) - Implement RPC driver support for virDomainOpenGraphics (Daniel P. Berrange) - Extend RPC server to allow FD passing (Daniel P. Berrange) - Add client side support for FD passing (Daniel P. Berrange) - Extend RPC protocol to allow FD passing (Daniel P. Berrange) - Add APIs for virNetSocket for sending/receiving file descriptors (Daniel P. Berrange) - Wire up QEMU implementation for virDomainOpenGraphics (Daniel P. Berrange) - Extend graphics event to include UNIX socket (Daniel P. Berrange) - virsh: Fix error message on vol-create-from failure (Ryota Ozaki) - bridge: modify for use when sVirt is enabled with qemu (Tyler Coumbes) - Use virXMLSaveFile when writing XML config (Jiri Denemark) - Introduce virXMLSaveFile as a wrapper for virFileRewrite (Jiri Denemark) - Introduce virFileRewrite for safe file rewrite (Jiri Denemark) - Add a systemtap script for watching QEMU monitor interactions (Daniel P. Berrange) - qemu: simplify use of HAVE_YAJL (Eric Blake) - snapshot: simplify indentation of disk encryption xml (Eric Blake) - snapshot: simplify indentation of nwfilter (Eric Blake) - Add REMOTE_PROC_DOMAIN_EVENT_DISK_CHANGE to remote_protocol-structs (Daniel P. Berrange) - nwfilter: extend schema to support new targets (Stefan Berger) - util: Add virFileAccessibleAs to private symbols (Michal Privoznik) - startupPolicy: Emit event on disk source dropping (Michal Privoznik) - qemu: implement startupPolicy (Michal Privoznik) - qemu: Move device alias assigning before command line construction (Michal Privoznik) - util: Create virFileAccessibleAs function (Michal Privoznik) - conf: Introduce optional startupPolicy attribute for cdrom and floppy (Michal Privoznik) - waitpid: improve safety (Eric Blake) - virsh: Fix vol-info's 'Type' output (Ryota Ozaki) - support continue/return targets in nwfilter (David L Stevens) - snapshot: simplify indentation of network xml (Eric Blake) - snapshot: simplify indentation of cpu features (Eric Blake) - snapshot: simplify indentation of sysinfo (Eric Blake) - snapshot: test domainsnapshot indentation (Eric Blake) - snapshot: indent domain xml when nesting (Eric Blake) - virbuf: add auto-indentation support (Eric Blake) - virbuf: more detailed error reporting (Eric Blake) - virbuf: improve testsuite reporting (Eric Blake) - virbuf: fix const-correctness (Eric Blake) - qemu: allow json in domxml-to-native (tangchen) - support setting bandwidth from virsh attach-interface (Hu Tao) - lxc: use hand-rolled code in place of unlockpt and grantpt (Serge E. Hallyn) - qemu: Test name-space handling (Philipp Hahn) - qemu: Fix name-space handling (Philipp Hahn) - Replace virBufferAdd with virBufferAddLit for const string (Daniel P. Berrange) - Allow for URI aliases when connecting to libvirt (Daniel P. Berrange) - Add support for autodestroy of guests to the LXC and UML drivers (Daniel P. Berrange) - Use virBufferEscapeShell in cmdEcho (Guido Günther) - qemu: replace qemuMonitorEscapeShell by virBufferEscapeShell (Guido Günther) - virBufferEscapeShell: Emit quotes for the empty string (Guido Günther) - snapshot: detect when qemu lacks disk-snapshot support (Eric Blake) - virBufferEscapeShell: Fix escaping of single quotes. (Guido Günther) - compile: Add a missing function 'pciDeviceListFind' to libvirt_private.syms (Xu He Jie) - snapshot: implement LIST_LEAVES flag in esx (Eric Blake) - qemu: Relax -no-shutdown check to [0.14.0, 0.15.0] (Jiri Denemark) - qemu: Honor the orginal PCI dev properties when reattaching (Osier Yang) - qemu: Do not reattach PCI device used by other domain when shutdown (Osier Yang) - Xen: Fake versions in xencapstest (Philipp Hahn) - Xen: move versions to struct (Philipp Hahn) - Use virBufferEscapeShell in virNetSocketNewConnectSSH (Guido Günther) - Add virBufferEscapeShell (Guido Günther) - Autodetect if the remote nc command supports the -q option (Guido Günther) - qemu: Make sure BeginJob is always followed by EndJob (Jiri Denemark) - qemu: Log debug messages when changing job (Jiri Denemark) - build: add compiler attributes to virUUIDParse (Eric Blake) - Fix typo in lxc_controller (Serge E. Hallyn) - build: update to latest gnulib (Eric Blake) - events: Propose a separate lock for event queue (Michal Privoznik) - qemu: Implement VIR_DUMP_RESET (Michal Privoznik) - virDomainCoreDump: Introduce VIR_DUMP_RESET flag (Michal Privoznik) - example: Support debug output and loop switch (Philipp Hahn) - example: Redirect --help output to stdout/stderr (Philipp Hahn) - example: Fix argument handling (Philipp Hahn) - snapshot: implement LIST_LEAVES flag in qemu (Eric Blake) - snapshot: add API for filtering by leaves (Eric Blake) - tests: Add support for skipping tests (Philipp Hahn) - Introduce <driver> under <filesystem> to support open-by-handle (Harsh Prateek Bora) - buf: implement generic virBufferEscape (Sage Weil) - daemon: Always advertise libvirtd service (Osier Yang) - snapshot: take advantage of new relations (Eric Blake) - snapshot: track qemu snapshot relations (Eric Blake) - snapshot: framework for more efficient relation traversal (Eric Blake) - snapshot: use correct qmp monitor command (Eric Blake) - snapshot: virsh shorthand for operating on current snap (Eric Blake) - build: ship helper scripts (Eric Blake) - Rewrite all the DTrace/SystemTAP probing (Daniel P. Berrange) - Fix missing lock calls on virNetTLSContextRef (Daniel P. Berrange) - Refactor TLS to facilitate dynamic probing (Daniel P. Berrange) - Add virSocketRef API to facilitate dynamic probing (Daniel P. Berrange) - Make libvirt.so include the RPC server code (Daniel P. Berrange) - snapshot: implement snapshot children listing in esx (Eric Blake) - snapshot: implement snapshot children listing in qemu (Eric Blake) - snapshot: remote protocol for snapshot children (Eric Blake) - snapshot: virsh fallback for snapshot-list --descendants --from (Eric Blake) - snapshot: virsh fallback for snapshot-list --from children (Eric Blake) - snapshot: virsh fallback for snapshot-list --tree --from (Eric Blake) - snapshot: virsh snapshot-list and children (Eric Blake) - xen: add error handling to UUID parsing (Guido Günther) - maint: typo fixes (Eric Blake) - snapshot: sort snapshot-list --tree (Eric Blake) - snapshot: simplify redefinition of disk snapshot (Eric Blake) - snapshot: let virsh edit disk snapshots (Eric Blake) - snapshot: fix virsh error message typo (Eric Blake) - qemu: add separate rerror_policy for disk errors (Laine Stump) - qemu: leave rerror policy at default when enospace is requested (Laine Stump) - qemu: enable multifunction for older qemu (Eric Blake) - Make LXC work with new network configuration types (Daniel P. Berrange) - init: raise default system aio limits (Eric Blake) - maint: fix minor issues in virterror public header (Eric Blake) - snapshot: enforce REVERT_FORCE on qemu (Eric Blake) - snapshot: use qemu-img on disks in use at time of snapshot (Eric Blake) - snapshot: add REVERT_FORCE to API (Eric Blake) - snapshot: implement snapshot roots listing in vbox (Eric Blake) - qemu: Don't fail virDomainGetInfo if we can't update balloon info (Jiri Denemark) - snapshot: simplify esx snapshot name lookup (Eric Blake) - snapshot: implement snapshot roots listing in esx (Eric Blake) - qemu: correct misspelled 'enospc' option, and only use for werror (Laine Stump) - snapshot: better virsh handling of missing current, parent (Eric Blake) - Allow passing of command line args to LXC container (Daniel P. Berrange) - Add support for bandwidth filtering on LXC guests (Daniel P. Berrange) - network: fill in bandwidth from portgroup for all forward modes (Laine Stump) - bridge_driver.c: Fix autoconf setting (Neil Wilson) - Set to NULL members that have been freed to prevent crashes (Marc-André Lureau) - snapshot: implement getparent for vbox (Eric Blake) - snapshot: implement getparent for esx (Eric Blake) - qemu: make PCI multifunction support more manual (Laine Stump) - lvm storage backend: handle command_names=1 in lvm.conf (Serge E. Hallyn) - qemu: Check for outstanding async job too (Michal Privoznik) - virsh: Add 'reset' command for virsh (Xu He Jie) - remote: Implement 'reset' for remote driver (Xu He Jie) - qemu: Implement 'reset' for qemu driver (Xu He Jie) - logging: Add date to log timestamp (Jiri Denemark) - logging: Do not log timestamp through syslog (Jiri Denemark) - hyperv: Report an error for acceptable URI schemes with a transport (Matthias Bolte) - esx: Report an error for acceptable URI schemes with a transport (Matthias Bolte) - snapshot: implement getparent in qemu (Eric Blake) - snapshot: add virsh snapshot-list --tree (Eric Blake) - snapshot: refactor virsh snapshot parent computation (Eric Blake) - snapshot: remote protocol for getparent (Eric Blake) - security: properly chown/label bidirectional and unidirectional fifos (Laine Stump) - qemu: Preserve fakeReboot flag in domain status (Jiri Denemark) - qemu: Finish domain shutdown on reconnect (Jiri Denemark) - qemu: Check domain status details when reconnecting monitor (Jiri Denemark) - virsh: Allow using complete <capabilities> elements with cpu-baseline (Peter Krempa) - virsh: Allow using domain and capabilities XMLs with cpu-compare (Peter Krempa) - qemu: add ability to set PCI device "rombar" on or off (Laine Stump) - qemu: Relax -no-shutdown check to [0.14.0, 0.15.50) (Jiri Denemark) - virLockManagerNopInit: Rename flags to unused_flags (Michal Privoznik) - debug: Annotate some variables as unused (Michal Privoznik) - maint: update authors (Peter Krempa) - Add unsafe cache mode support for disk driver (Oskari Saarenmaa) - selinux: Correctly report warning if virt_use_nfs not set (Michal Privoznik) - virsh: Do not ignore the specified flags for cmdSaveImageDefine (Osier Yang) - qemu: Transfer inactive XML among cookie (Michal Privoznik) Cleanups: - Remove translations in socket test case (Daniel P. Berrange) - test: drop redundant check (Eric Blake) - startupPolicty: Minor cleanups (Michal Privoznik) - secret: fix bad patch application (Eric Blake) - Remove trailing whitespace from all xfig files (Daniel P. Berrange) - Fix typo in virFileAccessibleAs (Daniel P. Berrange) - snapshot: minor cleanups from reviewing indentation (Eric Blake) - build: ignore test executable (Eric Blake) - esx: drop dead code to silence Coverity (Eric Blake) - snapshot: drop dead parameters (Eric Blake) - qemu: silence Coverity false positive (Eric Blake) - conf: remove unused VIR_ENUM_DECL (Laine Stump) thanks to everybody who helped for this release, by reporting bugs, providing ideas, patches, or documentation ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list