As planned I have tagged the release in git and pushed the tarball as well as signed rpms to the usual place: ftp://libvirt.org/libvirt/ I also tagged 1.2.6 for the libvirt tree and pushed the associated release to its own tree: ftp://libvirt.org/libvirt/python/ Looks like a well balanced release, some new user visible features, a number of bugs fixes, lot of improvement accross the whole code, and a bit less than 300 patches in. Features: - libxl: add migration support and fixes (Jim Fehlig) - various improvements and fixes for NUMA (Michal Privoznik) Documentation: - security: manager: Document behavior of disk label manipulation funcs (Peter Krempa) - fix some typos in formatdomain.html (Jincheng Miao) - virsh: man: Correctly spell QEMU (Peter Krempa) - virsh: man: Fix examples and docs for virsh version (Peter Krempa) - Added example script on how to convert LXC container config (Cédric Bosdonnat) - blockjob: document recent job addition (Eric Blake) - virsh: Add details about specified migration host (Chen Fan) - blockcommit: document semantics of committing active layer (Eric Blake) - fix a typo in hacking.html.in (Wangrui (K)) - formatcaps: Rework and add stubs to document (Michal Privoznik) Portability: - build: link libvirt_conf with libxml (Martin Kletzander) - vbox: fix linker error (Jim Fehlig) - libxl: don't break the build on Xen>=4.5 because of libxl_vcpu_setaffinity() (Dario Faggioli) - Add PKG_CONFIG_PATH to run.in script. (Daniel P. Berrange) - Change 'interface' to 'iface' in virNetworkDHCPLease (Daniel P. Berrange) - Fix shadowed variable with older gcc (Ján Tomko) - Add pkg-config files to allow deps to build against source tree (Daniel P. Berrange) - Add pkg-config files for libvirt-qemu & libvirt-lxc (Daniel P. Berrange) - blockjob: avoid compiler uncertainty in info sizing (Eric Blake) - build: prefer -fstack-protector-strong to -all (Ján Tomko) - build: remove ssp-buffer-size (Ján Tomko) - build: remove duplicit warning suppression (Ján Tomko) - virnetdev: Use ifname in virNetDevGetLinkInfo (Michal Privoznik) - Fix virbitmaptest on 32-bit (Ján Tomko) - translations: Don't leave default template fields in .po files (Martin Kletzander) - tests: Build virstoragetest only when storage driver is compiled too (Peter Krempa) - Fix build on freebsd (Pavel Hrdina) Bug Fixes: - qemu: copy: Accept 'format' parameter when copying to a non-existing img (Peter Krempa) - storage: gluster: Fix header reader function (Peter Krempa) - conf: storage: Add volume feature formatter for gluster pools (Peter Krempa) - vboxsnapshotxmltest: Don't write to a file in abs_srcdir (Michal Privoznik) - securityselinuxlabeltest: Don't create dummy file in the srcdir (Michal Privoznik) - Report one error less when getting net dev speed (Ján Tomko) - Only detect PCI Express devices as root in udev nodedev driver (Ján Tomko) - libxl: add PV console if not explicitly specified (Jim Fehlig) - qemu: snapshot: Save persistent domain config when taking external snapshot (Peter Krempa) - bhyve: fix build by fixing typo in variable name (Roman Bogorodskiy) - docs: publish correct enum values (Eric Blake) - qemu: fix guestfwd chardev option back how it was (Martin Kletzander) - Fix typo s/SASL_CONF_DIR/SASL_CONF_PATH/ in QEMU VNC code (Daniel P. Berrange) - qemu: blockcopy: Don't remove existing disk mirror info (Peter Krempa) - bridge: leases: Fix potential crash caused by use after free (Peter Krempa) - Free DHCP leases file in networkGetDHCPLeasesHelper (Ján Tomko) - Rework remoteSerializeDHCPLease (Ján Tomko) - Free file header in virStorageFileGetMetadataRecurse (Ján Tomko) - graphics: remember graphics not auto allocated ports (Giuseppe Scrivano) - LXC: trivially support flag VIR_DRV_FEATURE_TYPED_PARAM_STRING (Chen Hanxiao) - cmdFreepages: initialize @tmp (Michal Privoznik) - Fix closedir usage in virNumaGetPages (Roman Bogorodskiy) - Don't include @LIBS@ in libvirt.pc.in file (Daniel P. Berrange) - virnuma: Actually build huge page code (Michal Privoznik) - Do not call closedir with NULL argument (Ján Tomko) - Fix invalid write in virNumaGetDistances (Ján Tomko) - Properly check the return value of CCWAddressAsString (Ján Tomko) - virsh: fix broken code in freepages (Eric Blake) - Fix xmconfigtest (Jim Fehlig) - vbox_snapshot_conf: fix wrong use of 'xmlSaveFormatFileEnc' (Pavel Hrdina) - tests: fix vbox snapshot xmls (Pavel Hrdina) - vbox: fix a segfault when taking a snapshot (Yohan BELLEGUIC) - vbox: snapshot: Avoid memleaks in functions dealing with disk arrays (Peter Krempa) - vbox: snapshot: Avoid memleak in virVBoxSnapshotConfAllChildren (Peter Krempa) - uuid: Fix coverity warning of unchecked return value (Peter Krempa) - network: bridge: Avoid freeing uninitialized pointer on cleanup path (Peter Krempa) - net: leaseshelper: Refactor copying of old entries to avoid double free (Peter Krempa) - net: leaseshelper: Ignore corrupted lease file and rewrite it (Peter Krempa) - net: leaseshelper: Don't crash if DNSMASQ doesn't provide lease expiry (Peter Krempa) - blockjob: don't remove older-style mirror XML (Eric Blake) - blockcommit: require base below top (Eric Blake) - leaseshelper: fix another crash (Pavel Hrdina) - bhyve: do not cleanup unallocated networks on fail (Roman Bogorodskiy) - bhyve: fix crash in bhyveBuildNetArgStr (Roman Bogorodskiy) - storage: report VIR_ERR_NO_STORAGE_VOL when the file doesn't exist (Giuseppe Scrivano) - blockcommit: fix regression with explicit top argument (Eric Blake) - virsh: forbid negative vcpu argument to vcpupin (Jincheng Miao) - Fix crash when saving a domain with type none dac label (Ján Tomko) - vbox_snapshot_conf: Resolve Coverity warnings (John Ferlan) - vbox_temp: Resolve Coverity warnings (John Ferlan) - libxl: Resolve Coverity warnings (John Ferlan) - leaseshelper: fix crash (Pavel Hrdina) - qemu: Properly label FDs when restoring domain with static label (Shivaprasad G Bhat) - nodeinfo: avoid uninitialized variable on error (Eric Blake) - storage: fix memory leak with encrypted images (Eric Blake) - vbox: fix compilation error (Roman Bogorodskiy) - SELinux: don't fail silently when no label is present (Ján Tomko) - parallels: Avoid possible leak of "cpu" from parallelsBuildCapabilities (Peter Krempa) - Fix storage format probing (Ján Tomko) - network: bridge: Avoid memory leak from networkBuildDhcpDaemonCommandLine (Peter Krempa) - qemu: monitor: Fix type of holdtime argument in qemuMonitorJSONSendKey (Peter Krempa) - libxl: Avoid possible use of uninitialized mem in libxlDomainStart (Daniel P. Berrange) - qemu: Remove character device backend only after frontend is gone (Jiri Denemark) - qemu: Remove disk backend only after frontend is gone (Jiri Denemark) - qemu: Remove interface backend only after frontend is gone (Jiri Denemark) - Don't use AI_ADDRCONFIG when binding to wildcard addresses (Ján Tomko) - qemu: Unref cfg when detaching hostdev interface (Jiri Denemark) - virsh: Check whether found volume is member of the specified storage pool (Peter Krempa) Improvements: - Introduce virFileReadAllQuiet (Ján Tomko) - Track privileged state in udev nodedev driver (Ján Tomko) - build: fix 'make syntax-check' after commit c6cf5df3 (Jim Fehlig) - LXC: throw an error if we failed to get Idmap elements (Chen Hanxiao) - cpu: Add new Broadwell CPU model (Jiri Denemark) - net: merge virNetworkGetDHCPLeases and virNetworkGetDHCPLeasesForMAC (Peter Krempa) - Add test for type none model dac seclabel (Ján Tomko) - test: add user_xattr check for securityselinuxlabeltest (Jincheng Miao) - libxl: detect support for save and restore (Jim Fehlig) - security: nop: Avoid very long lines (Peter Krempa) - security: Fix header formatting of a few functions (Peter Krempa) - security: manager: Unify function header format (Peter Krempa) - security: manager: Avoid forward decl of virSecurityManagerDispose (Peter Krempa) - security: Rename virSecurityManagerRestoreImageLabel to *Disk* (Peter Krempa) - util: s/virStorageSourceClearBackingStore/virStorageSourceBackingStoreClear (Peter Krempa) - Fix a typo in a localized string (Daniel Veillard) - virConnectCompareCPU: Introduce FAIL_INCOMPATIBLE flag (Jiri Denemark) - cpuCompare*: Add support for reporting failure on incompatible CPUs (Jiri Denemark) - cpu: Cleanup coding style in generic CPU driver (Jiri Denemark) - virsh: Remove bogus stat on log file (Jiri Denemark) - enhance hostdev mode 'capabilities' process (Jincheng Miao) - storage: Don't store parent directory of an image explicitly (Peter Krempa) - storage: Don't canonicalize paths unnecessarily (Peter Krempa) - tests: virstoragetest: Remove unneeded relative test plumbing (Peter Krempa) - tests: virstoragetest: Don't test relative start of backing chains (Peter Krempa) - util: storage: Remove now redundant backingRelative from virStorageSource (Peter Krempa) - tests: virstoragetest: Remove now unused pathAbs (Peter Krempa) - storage: Store relative path only for relatively backed storage (Peter Krempa) - tests: virstoragetest: Remove "expBackingStore" field (Peter Krempa) - util: storage: Add helper to resolve relative path difference (Peter Krempa) - LXC: check whether we get MemSwap[Total|Usage] (Chen Hanxiao) - qemu: enum cleanups in "src/qemu/*" (Julio Faracco) - libxl: fix version annotation of migration functions (Jim Fehlig) - virtportallocator: new function "virPortAllocatorSetUsed" (Giuseppe Scrivano) - net-dhcp-leases: Add virsh support (Nehal J Wani) - net-dhcp-leases: Private implementation inside network (Nehal J Wani) - net-dhcp-leases: Implement the remote protocol (Nehal J Wani) - net-dhcp-leases: Implement the public APIs (Nehal J Wani) - virNumaGetPages: Don't fail on huge page-less systems (Michal Privoznik) - virNumaGetPageInfo: Take huge pages into account (Michal Privoznik) - storage: gluster: Avoid name shadow on older compilers (Peter Krempa) - storage: gluster: Add backend to return unique storage file path (Peter Krempa) - util: storagefile: Introduce universal function to canonicalize paths (Peter Krempa) - util: string: Add helper to free non-NULL terminated string arrays (Peter Krempa) - libxl: prefer qdisk for <driver name='file'> (Jim Fehlig) - qemu: parse -device virtio-balloon (Laine Stump) - Report correct error in virNetDevTapCreate (Ján Tomko) - util: numa: Stub out hugepage code on non-Linux platforms (Peter Krempa) - util: numa: Catch readdir errors in virNumaGetPages (Peter Krempa) - tests: Fix syntax-check after cdd11151791bc9e61538988438980f41c0185681 (Peter Krempa) - test: Disable storage test when FS backend isn't compiled in (Peter Krempa) - Split out CCW address allocation (Ján Tomko) - libxl: Use cooperative resume for migration (Jason Andryuk) - cpu_arm: Support all ARM processors we know about (Michal Privoznik) - virNodeParseSocket: Take ARM into account (Michal Privoznik) - nodeinfotest: Print error if cpuinfo file can't be opened (Michal Privoznik) - virNodeParseNode: Propagate host architecture (Michal Privoznik) - nodeinfo: Introduce @arch to linuxNodeInfoCPUPopulate (Michal Privoznik) - interface: clean up virInterfaceDefDevFormat (Laine Stump) - interface: clean up virInterfaceDefParseXML (Laine Stump) - interface: move parsing of bridge attributes into appropriate function (Laine Stump) - interface: report link state for bonds and vlans too (Laine Stump) - security: Rename virSecurityManagerSetImageLabel to *Disk* (Peter Krempa) - security: Sanitize type of @migrated in virSecurityManagerRestoreAllLabel (Peter Krempa) - util: Don't require full disk definition when getting imagelabels (Peter Krempa) - util: storagefile: Introduce helper to free storage source perms (Peter Krempa) - util: seclabel: Add deep copy function for device labels (Peter Krempa) - storage: encryption: Add deep copy function for storage encryption (Peter Krempa) - libxl: limit support for specifying an interface script (Jim Fehlig) - libxl: support interface type=network (Jim Fehlig) - interface: allow reordering of elements in xml (Laine Stump) - nodeinfo: Implement nodeGetFreePages (Michal Privoznik) - virsh: Expose virNodeGetFreePages (Michal Privoznik) - Introduce virNodeGetFreePages (Michal Privoznik) - virCaps: expose pages info (Michal Privoznik) - virnuma: Introduce pages helpers (Michal Privoznik) - nodeinfo: Rename nodeGetFreeMemory to nodeGetMemory (Michal Privoznik) - virnuma: Introduce virNumaNodeIsAvailable (Michal Privoznik) - virsh: expose new active commit controls (Eric Blake) - blockjob: use stable disk string in job event (Eric Blake) - xen: handle root= in xen-xm configuration files. (Ian Campbell) - virt-aa-helper: allow access to /dev/vhost-net if needed (Serge Hallyn) - util: json: Add helpers for manipulating json arrays (Peter Krempa) - util: json: Unify function header formatting (Peter Krempa) - Increase the size of REMOTE_MIGRATE_COOKIE_MAX to REMOTE_STRING_MAX (Shivaprasad G Bhat) - nodedev: Introduce <pci-express/> to PCI devices (Michal Privoznik) - virpci: Introduce virPCIDeviceIsPCIExpress and friends (Michal Privoznik) - storage: better tests of lookup (Eric Blake) - storage: renumber lookup tests (Eric Blake) - storage: add alias for less typing (Eric Blake) - qemu: snapshot: Don't mark all block disks for metadata reuse (Peter Krempa) - bhyve: silent destroy command errors on cleanup (Roman Bogorodskiy) - bhyve: implement PCI address allocation (Roman Bogorodskiy) - virNetDevGetLinkInfo: Don't report link speed if NIC's not up (Michal Privoznik) - tests: virstoragetest: Fix output when hitting errors (Peter Krempa) - blockcommit: update error messages related to block jobs (Eric Blake) - virsh: improve blockcopy UI (Eric Blake) - virNodeDevCapPCIDevParseXML: Initialize numa_node variable (Michal Privoznik) - virsh: Reject negative numbers in vshCommandOptULongLong (Peter Krempa) - virsh: Reject negative numbers in vshCommandOptUL (Peter Krempa) - virsh: Reject negative numbers in vshCommandOptUInt (Peter Krempa) - security: Don't skip labelling for network disks (Peter Krempa) - storage: volume: Rework lookup of volume objects (Peter Krempa) - storage: Clean up unlocking of storage pool objects (Peter Krempa) - storage: pool: Fix handling of errors on pool lookup failure (Peter Krempa) - virsh: include bhyve in virsh -V output (Roman Bogorodskiy) - maint: exempt graphic binaries from syntax check (Eric Blake) - vmware: make version parsing more robust (Jean-Baptiste Rouault) - node_device: Expose link state & speed (Michal Privoznik) - interface_backend_udev: Implement link speed & state (Michal Privoznik) - virnetdev: Introduce virNetDevGetLinkInfo (Michal Privoznik) - virInterface: Expose link state & speed (Michal Privoznik) - vbox_tmpl.c: Add function for undefining snapshot (Yohan BELLEGUIC) - vbox_tmpl.c: Patch for redefining snapshots (Yohan BELLEGUIC) - Add vbox_snapshot_conf struct (Yohan BELLEGUIC) - vbox_tmpl.c: Better XML description for snapshots (Manuel VIVES) - qemu: ignore -nodefconfig and -nodefaults when parsing commandline (Laine Stump) - test: display qemuParseCommandline warnings when VIR_TEST_DEBUG > 0 (Laine Stump) - m4: bhyve: Fix check for the required bhyve programs (Peter Krempa) - vmx: Relax virtualHW.version check (Matthias Bolte) - conf: alter disk mirror xml output (Eric Blake) - conf: store mirroring information in virStorageSource (Eric Blake) - conf: store disk source as pointer, for easier manipulation (Eric Blake) - conf: consolidate disk def allocation (Eric Blake) - conf: store snapshot source as pointer, for easier manipulation (Eric Blake) - nodedev: Export NUMA node locality for PCI devices (Michal Privoznik) - Implement pretty flag for vcpuinfo and nodecpumap (Ján Tomko) - Introduce virBitmapDataToString (Ján Tomko) - Always report an error if virBitmapFormat fails (Ján Tomko) - Format NULL bitmap as an empty string (Ján Tomko) - virsh: Separate API calls and result printing in cmdVcpuinfo (Ján Tomko) - virsh: Invert logic in cmdVcpuinfo (Ján Tomko) - Parallels: Include CPU info in the capabilities XML (Alexander Burluka) - Parallels: add connectBaselineCPU() (Alexander Burluka) - Parallels: add domainGetVcpus() (Alexander Burluka) - maint: prohibit empty first lines (Martin Kletzander) - Remove unnecessary empty first lines (Martin Kletzander) - Simplify conditions in virStorageBackendProbeTarget (Ján Tomko) - Don't reuse 'ret' variable in virStorageBackendProbeTarget (Ján Tomko) - vircaps2xmltest: Introduce basic testing (Michal Privoznik) - libxl: introduce libxlDomainDefCheckABIStability (Jim Fehlig) - maint: detect VPATH builds when checking for gnulib update (Eric Blake) - maint: optimize locale.h syntax check (Eric Blake) - virnuma: Check for numa_bitmask_isbitset presence (Michal Privoznik) - cfg.mk: Introduce rule for setlocale() (Michal Privoznik) - virnuma: Implement virNumaGetDistances stub for non-NUMA (Michal Privoznik) - virCaps: Expose distance between host NUMA nodes (Michal Privoznik) - virnuma: Introduce virNumaGetDistances (Michal Privoznik) - tests: monitor: json: Fix error message when returning json in json (Peter Krempa) - libxl: Move virDomainXMLOptionNew into libxlCreateXMLConf (Daniel P. Berrange) - libxl: Don't pass libxlDriverPrivatePtr into libxlBuildDomainConfig (Daniel P. Berrange) - libxl: Don't pass virDomainObjPtr to libxlBuildDomainConfig (Daniel P. Berrange) - qemu: Return in from qemuDomainRemove*Device (Jiri Denemark) - tests: storagetest: Unify and reformat storage chain format string (Peter Krempa) - qemu: json: Add format strings for optional command arguments (Peter Krempa) - util: string: Return element count from virStringSplit (Peter Krempa) - storage: Traverse backing chains of network disks (Peter Krempa) - storage: Change to new backing store parser (Peter Krempa) - storage: Add infrastructure to parse remote network backing names (Peter Krempa) - storage: Switch metadata crawler to use storage driver file access check (Peter Krempa) - storage: Switch metadata crawler to use storage driver to read headers (Peter Krempa) - storage: Switch metadata crawler to use storage driver to get unique path (Peter Krempa) - storage: backend: Add possibility to suppress errors from backend lookup (Peter Krempa) - test: storage: Initialize storage source to correct type (Peter Krempa) - storage: Determine the local storage type right away (Peter Krempa) - storage: Move virStorageFileGetMetadata to the storage driver (Peter Krempa) - storage: Add API to check accessibility of storage volumes (Peter Krempa) - storage: backend: Add unique id retrieval API (Peter Krempa) - xenapi_utils: Adapt to enum cleanups (Michal Privoznik) - virnuma.c: Fix some comments (Michal Privoznik) - conf: more enum cleanups in "src/conf/domain_conf.h" (Julio Faracco) - conf: enum cleanups in "src/conf/domain_conf.h" (Julio Faracco) - cpu: use typedefs for enums in "src/cpu/cpu_map.h" (Julio Faracco) - virsh-nodedev: Avoid spurious errors (Michal Privoznik) - qemu: Process DEVICE_DELETED event in a separate thread (Jiri Denemark) - qemu: Finish device removal in the original thread (Jiri Denemark) - Add helper program to create custom leases (Nehal J Wani) Cleanups: - Remove redundant docs from libvirt.h (Jiri Denemark) - conf: whitespace tweak (Chen Fan) So thanks everybody for your contributions to this release and the python one, be it with reports, patches, documentation etc ... 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