<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
  <body>
    <h1>Releases (2012)</h1>
    <p>Here is the list of official releases made during the year 2012.
    A similar list for <a href="news-2011.html">2011</a> is also available.
    </p>
    <p>It is also possible to just use
    the <a href="downloads.html">GIT version or snapshot</a>,
    contact the mailing list and check
    the <a href="https://libvirt.org/git/?p=libvirt.git;a=log">GIT log</a>
    to gauge progress.
    </p>

    <h3>1.0.1: Dec 17 2012</h3>
    <ul>
      <li>Features:<br/>
      Introduce virtlockd daemon (Daniel P. Berrange),<br/>
      parallels: add disk and network device support (Dmitry Guryanov),<br/>
      Add virDomainSendProcessSignal API (Daniel P. Berrange),<br/>
      Introduce virDomainFSTrim() public API (Michal Privoznik),<br/>
      add fuse support for libvirt lxc (Gao feng),<br/>
      Add Gluster protocol as supported network disk backend (Harsh Prateek Bora),<br/>
      various snapshot improvements (Peter Krempa, Eric Blake)<br/>
      </li>

      <li>Documentation:<br/>
      fix some typos in examples (Eric Blake),<br/>
      Fix location of libvirt.conf and auth.conf (Michał Łomnicki),<br/>
      Document offline migration (Jiri Denemark),<br/>
      libvirt.c: Fix wording and grammar in virDomainFSTrim (Michal Privoznik),<br/>
      Fix a few spaces (Ján Tomko),<br/>
      boot order for host and redirected USB devices (Ján Tomko),<br/>
      AbortJob: Fix documentation (Michal Privoznik),<br/>
      Fix "virsh create" example (Guido Günther)<br/>
      </li>

      <li>Portability:<br/>
      build: minor build fixes for BSD (Eric Blake),<br/>
      Socket identity support for FreeBSD. (Roman Bogorodskiy),<br/>
      Require SANLK_INQ_WAIT for inq_lockspace support (Guido Günther),<br/>
      locking: Fix VPATH build and distribute generated files (Jiri Denemark),<br/>
      build: Fix VPATH build (Jiri Denemark),<br/>
      Change virCgroupGetAppRoot stub on non-Linux to avoid unused param warning (Daniel P. Berrange),<br/>
      Qemu FreeBSD: fix compilation (Roman Bogorodskiy),<br/>
      Drop mntent.h include. (Roman Bogorodskiy),<br/>
      virsh: Fix usage of header termios.h (Peter Krempa),<br/>
      pci: Fix building of 32bit PCI command array (Peter Krempa),<br/>
      spec: require dbus-daemon when using libvirtd in Fedora (Eric Blake),<br/>
      systemd: require dbus service (Eric Blake),<br/>
      rpc: fix build failure with older dbus (Eric Blake),<br/>
      build: fix build --without-network (Ján Tomko),<br/>
      build: trivial fix error: implicit declaration of function 'malloc' (Natanael Copa),<br/>
      run bootstrap if .gnulib is not present (Hu Tao),<br/>
      add ppc64 and s390x to arches where qemu-kvm exists (Dan Horák),<br/>
      nodeinfo: port nodecpumap to RHEL5 (Eric Blake),<br/>
      spec: don't enable cgconfig under systemd (Eric Blake)<br/>
      </li>

      <li>Bug Fixes:<br/>
      network: fix (non)update of dnsmasq config during virDomainUpdateDeviceFlags (Laine Stump),<br/>
      sanlock: Re-add lockspace unconditionally (Michal Privoznik),<br/>
      install: fix virtlockd installation (Eric Blake),<br/>
      qemu: don't fail update netdev on bridge detach failure (Laine Stump),<br/>
      selinux: fix NULL dereference in GetSecurityMountOptions (Ján Tomko),<br/>
      network: prevent dnsmasq from listening on localhost (Laine Stump),<br/>
      Fix error reporting when fetching SCSI/LVM keys (Daniel P. Berrange),<br/>
      Fix probing of QED file format (Daniel P. Berrange),<br/>
      Fix memory leak in QEMU QMP capabilities initialization (Daniel P. Berrange),<br/>
      qemu: snapshot: Remove memory image if external checkpoint fails (Peter Krempa),<br/>
      qemu: snapshot: Don't leak XML definition if restarting of CPUs fails (Peter Krempa),<br/>
      qemu: fix uninitialized variable warning in doPeer2PeerMigrate (Ján Tomko),<br/>
      conf: Remove duplicate declaration of virNetworkDNSDefPtr (Jiri Denemark),<br/>
      qemu: Restart CPUs with valid async job type when doing external snapshots (Peter Krempa),<br/>
      qemu: eliminate bogus error log when changing netdev's bridge (Laine Stump),<br/>
      qemu: capabilities: fix machine name/canonical swappage (Cole Robinson),<br/>
      Inhibit daemon shutdown during driver initialization (Guido Günther),<br/>
      util: Don't fail virGetGroupIDByName when group not found (Christophe Fergeau),<br/>
      util: Don't fail virGetUserIDByName when user not found (Christophe Fergeau),<br/>
      storage: Error out earlier if the volume target path already exists (Osier Yang),<br/>
      remote: Avoid the thread race condition (Daniel P. Berrange),<br/>
      qemu: Fix memory (and FD) leak on PCI device detach (Jiri Denemark),<br/>
      qemu: Don't free PCI device if adding it to activePciHostdevs fails (Jiri Denemark),<br/>
      qemu: Fix error code when attaching existing device (Jiri Denemark),<br/>
      Fix memory leak introduced by commit 501bfad1 (Jim Fehlig),<br/>
      Shut down session libvirtd cleanly on host shutdown/user logout (Alexander Larsson),<br/>
      Inhibit desktop shutdown while any virtual machines are running (Daniel P. Berrange),<br/>
      conf: prevent crash with no uuid in cephx auth secret (Ján Tomko),<br/>
      virsh: don't crash if shutdown --mode not provided (Eric Blake),<br/>
      qemu: Fix up the default machine type for QMP probing (Viktor Mihajlovski),<br/>
      Fix uninitialized variables (Guido Günther),<br/>
      qemu: don't attempt undefined QMP commands (Eric Blake),<br/>
      storage: fix scsi detach regression with cgroup ACLs (Eric Blake),<br/>
      nwfilter: report an error on OOM (Ján Tomko),<br/>
      virsh: check the return value of virStoragePoolGetAutostart (Ján Tomko),<br/>
      conf: fix uninitialized variable in virDomainListSnapshots (Ján Tomko),<br/>
      rpc: don't destroy xdr before creating it in virNetMessageEncodeHeader (Ján Tomko),<br/>
      virsh: use correct sizeof when allocating cpumap (Ján Tomko),<br/>
      util: fix virBitmap allocation in virProcessInfoGetAffinity (Ján Tomko),<br/>
      conf: fix NULL check in virNetDevBandwidthParse (Ján Tomko),<br/>
      Don't fail hard when we can't connect to the monitor (Guido Günther),<br/>
      node_memory: Fix bug of node_memory_tune (Osier Yang),<br/>
      node_memory: Do not fail if there is parameter unsupported (Osier Yang),<br/>
      network: fix crash when portgroup has no name (Laine Stump),<br/>
      maint: Fix use of invalid reboot flags (Michal Privoznik),<br/>
      util: check for NULL parameter in virFileWrapperFdCatchError (Ján Tomko),<br/>
      conf: snapshot: check return value of virDomainSnapshotObjListNum (Ján Tomko),<br/>
      conf: check the return value of virXPathNodeSet (Ján Tomko),<br/>
      cgroup: fix impossible overrun in virCgroupAddTaskController (Ján Tomko),<br/>
      nwfilter: fix NULL pointer check in virNWFilterSnoopReqNew (Ján Tomko),<br/>
      qemu: Fix error messages when dispatching guest agent commands (Peter Krempa),<br/>
      qemu: Fix QMP Capabability Probing Failure (Viktor Mihajlovski),<br/>
      qemu: Wait for monitor socket even without pid (Viktor Mihajlovski),<br/>
      bitmap: fix typo to use UL type of integer constant in virBitmapIsAllSet (Guannan Ren),<br/>
      qemu: fix a crash when save file can't be opened (Ján Tomko),<br/>
      Fix leak of virNetworkPtr in LXC startup failure path (Daniel P. Berrange),<br/>
      Fix error reporting in virNetDevVethDelete (Daniel P. Berrange),<br/>
      Ensure transient def is removed if LXC start fails (Daniel P. Berrange),<br/>
      Ensure failure to create macvtap device aborts LXC start (Daniel P. Berrange),<br/>
      Avoid crash when LXC start fails with no interface target (Daniel P. Berrange),<br/>
      Treat missing driver cgroup as fatal in LXC driver (Daniel P. Berrange),<br/>
      Ensure LXC container exits if cgroups setup fails (Daniel P. Berrange),<br/>
      Fix error handling in virSecurityManagerGetMountOptions (Daniel P. Berrange),<br/>
      storage: fix device detach regression with cgroup ACLs (Eric Blake),<br/>
      lxc: Don't crash if no security driver is specified in libvirt_lxc (Peter Krempa),<br/>
      lxc: Avoid segfault of libvirt_lxc helper on early cleanup paths (Peter Krempa),<br/>
      storage: fix logical volume cloning (Ján Tomko),<br/>
      Fix exiting of libvirt_lxc program on container quit (Daniel P. Berrange),<br/>
      Skip deleted timers when calculting next timeout (Daniel P. Berrange),<br/>
      Fix virDiskNameToIndex to actually ignore partition numbers (Daniel P. Berrange),<br/>
      qemu: Stop recursive detection of image chains when an image is missing (Peter Krempa),<br/>
      storage: Fix bug of fs pool destroying (Osier Yang),<br/>
      qemu: fix RBD attach regression (Scott Sullivan),<br/>
      qemu: allow larger discrepency between memory &amp; currentMemory in domain xml (Laine Stump),<br/>
      sanlock: Retry after EINPROGRESS (Michal Privoznik),<br/>
      virsh: fix uninitialized variable in cmdSnapshotEdit (Ján Tomko),<br/>
      util: fix index when building lock owners array (Laine Stump),<br/>
      Fix uninitialized variable in virLXCControllerSetupDevPTS (Daniel P. Berrange),<br/>
      tests: Remove temporary directories in qemumonitorjsontest (Peter Krempa),<br/>
      tests: Fix qemumonitorjsontest deadlock when the machine is under load (Peter Krempa),<br/>
      qemu: Fix domain ID numbering race condition (Peter Krempa),<br/>
      storage: fix broken backing chain (Philipp Hahn),<br/>
      qemu: Don't corrupt pointer in qemuDomainSaveMemory() (Peter Krempa),<br/>
      esx: Yet another connection fix for 5.1 (Martin Kletzander),<br/>
      iohelper: Don't report errors on special FDs (Michal Privoznik),<br/>
      qemu: Fix possible race when pausing guest (Peter Krempa),<br/>
      conf: net: Fix deadlock if assignment of network def fails (Peter Krempa),<br/>
      conf: net: Fix helper for applying new network definition (Peter Krempa)<br/>
      </li>

      <li>Improvements:<br/>
      spec: Include lockd files in libvirt-daemon package (Jiri Denemark),<br/>
      build: Install both qemu-lockd.conf and qemu-sanlock.conf (Jiri Denemark),<br/>
      build: use fewer cat processes (Eric Blake),<br/>
      build: Distribute more files (Jiri Denemark),<br/>
      virsh: use vshReconnect for non-default connections too (Ján Tomko),<br/>
      virsh: don't lie about reconnection in vshReconnect (Ján Tomko),<br/>
      Add support for locking based on SCSI volume ID (Daniel P. Berrange),<br/>
      Add support for locking based on LVM volume uuid (Daniel P. Berrange),<br/>
      Add ability to maintain disk leases indirectly (Daniel P. Berrange),<br/>
      Add a virtlockd client as a lock driver impl (Daniel P. Berrange),<br/>
      Add support for re-exec() of virtlockd upon SIGUSR1 (Daniel P. Berrange),<br/>
      Enable systemd socket activation with virtlockd (Daniel P. Berrange),<br/>
      Implement dispatch functions for lock protocol in virtlockd (Daniel P. Berrange),<br/>
      Define a wire protocol for talking to the virtlockd daemon (Daniel P. Berrange),<br/>
      Introduce basic infrastructure for virtlockd daemon (Daniel P. Berrange),<br/>
      Refactor creation of lock manager plugins (Daniel P. Berrange),<br/>
      Support network boot for HVM guests in libxl (Jim Fehlig),<br/>
      Add lots of debugging to storage file probing code (Daniel P. Berrange),<br/>
      Log warning if storage magic matches, but version does not (Daniel P. Berrange),<br/>
      network: match xml warning message (Eric Blake),<br/>
      Fix make check with different object directory (Viktor Mihajlovski),<br/>
      qemu: Improve error reporting from qemuDomainManagedSaveRemove (Peter Krempa),<br/>
      qemu: Small code cleanups in the managedsave functions (Peter Krempa),<br/>
      qemu: Refactor managed save functions to use domain lookup helpers (Peter Krempa),<br/>
      qemu: Add a new domain lookup helper and improve the docs (Peter Krempa),<br/>
      util: Fix warning message in previous patch (Peter Krempa),<br/>
      util: rework error reporting in virGet(User|Group)IDByName (Peter Krempa),<br/>
      Refactor virDomainHostdevFind method (Daniel P. Berrange),<br/>
      Slightly refactor hostdev parsing / formating (Daniel P. Berrange),<br/>
      Remove bogus const return values in storage file APIs (Daniel P. Berrange),<br/>
      Add missing export of virStorageFileGetLVMKey &amp; virStorageFileGetSCSIKey (Daniel P. Berrange),<br/>
      Fix sorting of libvirt_private.syms and add syntax check rule (Daniel P. Berrange),<br/>
      uml: Report error if inotify fails on driver startup (Cole Robinson),<br/>
      tools: Only install guests init script if --with-init=script=redhat (Cole Robinson),<br/>
      add vnc unix sockets to apparmor policy (Serge Hallyn),<br/>
      add security hook for permitting hugetlbfs access (Serge Hallyn),<br/>
      maint: mention when HACKING is rebuilt during make (Eric Blake),<br/>
      qemu: reuse qemuMigrationIsAllowed when doing save and managedsave (Peter Krempa),<br/>
      qemu: snapshot: Report better error message if migration isn't allowed (Peter Krempa),<br/>
      qemu: Make qemuMigrationIsAllowed more reusable (Peter Krempa),<br/>
      qemu: assume seccomp sandbox is supported since qemu 1.2 (Ján Tomko),<br/>
      domain: Keep assigned class_id in domstatus XML (Michal Privoznik),<br/>
      network: Create real network status files (Michal Privoznik),<br/>
      bandwidth: Create network bandwidth (un)plug functions (Michal Privoznik),<br/>
      bandwidth: Create rate update function (Michal Privoznik),<br/>
      bandwidth: Create (un)plug functions (Michal Privoznik),<br/>
      bandwidth: Create hierarchical shaping classes (Michal Privoznik),<br/>
      bandwidth: add new 'floor' attribute (Michal Privoznik),<br/>
      bandwidth: Attach sfq to leaf node (Michal Privoznik),<br/>
      parallels: handle network adapters of type 'routed' (Dmitry Guryanov),<br/>
      parallels: add routed pseudo network (Dmitry Guryanov),<br/>
      parallels: parse virtual network properties (Dmitry Guryanov),<br/>
      parallels: add network driver (Dmitry Guryanov),<br/>
      parallels: move parallelsParseError to parallels_utils.h (Dmitry Guryanov),<br/>
      parallels: add support of network interfaces to parallelsDomainDefineXML (Dmitry Guryanov),<br/>
      parallels: parse information about network interfaces (Dmitry Guryanov),<br/>
      examples: Fix balloon event callback (Jiri Denemark),<br/>
      network: put dnsmasq parameters in conf-file instead of command line (Gene Czarcinski),<br/>
      network: add support for DHCPv6 (Gene Czarcinski),<br/>
      conf: split &lt;forward&gt; parser/clear into separate functions (Laine Stump),<br/>
      conf: put data for network &lt;forward&gt; element into its own struct (Laine Stump),<br/>
      conf: make virNetworkIpDefClear consistent with other functions (Laine Stump),<br/>
      conf: rename some labels and functions in network_conf (Laine Stump),<br/>
      network: backend functions for updating network dns host/srv/txt (Laine Stump),<br/>
      conf: clear and parse functions for dns host/srv/txt records (Laine Stump),<br/>
      conf: rename network dns host/srv/txt arrays (Laine Stump),<br/>
      conf: use VIR_(INSERT|DELETE)_ELEMENT in virNetworkUpdate backend (Laine Stump),<br/>
      util: add VIR_(APPEND|INSERT|DELETE)_ELEMENT (Laine Stump),<br/>
      parallels: add support of removing disks (Dmitry Guryanov),<br/>
      parallels: apply config after VM creation (Dmitry Guryanov),<br/>
      parallels: add support of disks creation (Dmitry Guryanov),<br/>
      parallels: add function parallelsGetDiskBusName (Dmitry Guryanov),<br/>
      parallels: split parallelsStorageVolumeDelete function (Dmitry Guryanov),<br/>
      parallels: fill volumes capacity parameter (Dmitry Guryanov),<br/>
      parallels: add info about volumes (Dmitry Guryanov),<br/>
      parallels: fix leaks in parallelsFindVolumes (Dmitry Guryanov),<br/>
      parallels: create storage pools by VM list (Dmitry Guryanov),<br/>
      parallels: remove unused code from storage driver (Dmitry Guryanov),<br/>
      parallels: split parallelsStorageOpen function (Dmitry Guryanov),<br/>
      parallels: handle disk devices in parallelsDomainDefineXML (Dmitry Guryanov),<br/>
      parallels: add info about hard disk devices (Dmitry Guryanov),<br/>
      Add support for offline migration (liguang),<br/>
      S390: Assign default model "virtio" for network interfaces (Viktor Mihajlovski),<br/>
      virsh: allow metadata preallocation when creating volumes (Ján Tomko),<br/>
      storage: allow metadata preallocation when creating qcow2 images (Ján Tomko),<br/>
      qemu: Allow the user to specify vendor and product for disk (Osier Yang),<br/>
      Convert libxl driver to Xen 4.2 (Jim Fehlig),<br/>
      network: prevent a few invalid configuration combinations (Laine Stump),<br/>
      network: allow guest to guest IPv6 without gateway definition (Gene Czarcinski),<br/>
      util: Do not keep PCI device config file open (Jiri Denemark),<br/>
      util: Slightly refactor PCI list functions (Jiri Denemark),<br/>
      qemu: Simplify the code (Osier Yang),<br/>
      qemu: improve error for failed JSON commands (Eric Blake),<br/>
      qemu: nicer error message if live disk snapshot unsupported (Eric Blake),<br/>
      implement managedsave in libvirt xen legacy driver (Bamvor Jian Zhang),<br/>
      Bind connection close callback APIs to python binding (Daniel P. Berrange),<br/>
      Replace polling for active VMs with signalling by drivers (Daniel P. Berrange),<br/>
      Only let VM drivers block libvirtd timed shutdown (Daniel P. Berrange),<br/>
      Make QEMU perform managed save of all VMs on stop of libvirtd (Daniel P. Berrange),<br/>
      build: fix incremental autogen.sh when no AUTHORS is present (Eric Blake),<br/>
      Add iSCSI backend storage driver for ESX (Ata E Husain Bohra),<br/>
      qemu: support live update of an interface's filter (Laine Stump),<br/>
      nwfilter: utility function virNWFilterVarValueEqual (Stefan Berger),<br/>
      conf: fix virDomainNetGetActualDirect*() and BridgeName() (Laine Stump),<br/>
      virsh: Report errors if arguments of the schedinfo command are incorrect (Peter Krempa),<br/>
      logging: more API needing to log flags (Eric Blake),<br/>
      s/flags=%u/flags=%x/ in earlier commit (Daniel P. Berrange),<br/>
      Allow duration=0 for virsh nodesuspend (Daniel P. Berrange),<br/>
      Allow comma separated list of shutdown/reboot modes with virsh (Daniel P. Berrange),<br/>
      Introduce APIs for splitting/joining strings (Daniel P. Berrange),<br/>
      Add support for shutdown / reboot APIs in LXC driver (Daniel P. Berrange),<br/>
      Introduce two new methods for triggering controlled shutdown/reboot (Daniel P. Berrange),<br/>
      Move reboot/shutdown flags combination check into QEMU driver (Daniel P. Berrange),<br/>
      Add APIs for talking to init via /dev/initctl (Daniel P. Berrange),<br/>
      Ensure virDomainShutdownFlags logs flags parameter (Daniel P. Berrange),<br/>
      Quote client identity in SASL whitelist log message (Daniel P. Berrange),<br/>
      qemu: Refactor error reporting in qemu driver configuration parser (Peter Krempa),<br/>
      qemu: Refactor config parameter retrieval (Peter Krempa),<br/>
      network: use dnsmasq --bind-dynamic when available (Laine Stump),<br/>
      util: new virSocketAddrIsPrivate function (Laine Stump),<br/>
      util: capabilities detection for dnsmasq (Laine Stump),<br/>
      virsh: do timing even for unusable connections (Ján Tomko),<br/>
      Turn some dual-state int parameters into booleans (Daniel P. Berrange),<br/>
      Introduce a 'stop' method to virDriverState (Daniel P. Berrange),<br/>
      Implement virDomainSendProcessSignal for LXC driver (Daniel P. Berrange),<br/>
      Add a 'send-process-signal' command to virsh (Daniel P. Berrange),<br/>
      Specify remote protocol for virDomainSendProcessSignal (Daniel P. Berrange),<br/>
      Rename misc QEMU structs/enums to use normal naming style (Daniel P. Berrange),<br/>
      Replace 'struct qemud_driver *' with virQEMUDriverPtr (Daniel P. Berrange),<br/>
      virsh: fix error messages in iface-bridge (Ján Tomko),<br/>
      libssh2_session: support DSS keys as well (Ján Tomko),<br/>
      virsh: Rewrite cmdDomDisplay (Martin Kletzander),<br/>
      virsh: Expose new virDomainFSTrim API (Michal Privoznik),<br/>
      qemu: Implement virDomainFSTrim (Michal Privoznik),<br/>
      remote: Implement virDomainFSTrim (Michal Privoznik),<br/>
      qemu: Add QEMU version computation to QMP probing (Viktor Mihajlovski),<br/>
      mount fuse's meminfo file to container's /proc/meminfo (Gao feng),<br/>
      make /proc/meminfo isolate with host through fuse (Gao feng),<br/>
      add interface virCgroupGetAppRoot (Gao feng),<br/>
      add interface virCgroupGetMemSwapUsage (Gao feng),<br/>
      Add a configure option for fuse support in LXC driver (Gao feng),<br/>
      Alphabetically sort libvirt_daemon.syms (Daniel P. Berrange),<br/>
      Change bridge driver to use named initializers with virDriverState (Daniel P. Berrange),<br/>
      virdbus: Add virDBusGetSessionBus helper (Alexander Larsson),<br/>
      Specify name of target interface with macvlan error (Daniel P. Berrange),<br/>
      Store initpid in the domain status XML for LXC (Daniel P. Berrange),<br/>
      Pass virSecurityManagerPtr object further down into LXC setup code (Daniel P. Berrange),<br/>
      tests: Add tests for gluster protocol based network disks support (Harsh Prateek Bora),<br/>
      qemu: Add support for gluster protocol based network storage backend. (Harsh Prateek Bora),<br/>
      Refactor ESX storage driver to implement facade pattern (Ata E Husain Bohra),<br/>
      Add private data pointer to virStoragePool and virStorageVol (Ata E Husain Bohra),<br/>
      cpu: Add Intel Haswell cpu model (Peter Krempa),<br/>
      util: Use virReportSystemError for system error in pci.c (Osier Yang),<br/>
      virsh: Report error when taking a snapshot with empty --memspec argument (Peter Krempa),<br/>
      Warn if requesting update to non-existent timer/handle watch (Daniel P. Berrange),<br/>
      qemuhelpdata: Revert my 'fix' (Michal Privoznik),<br/>
      conf: Report sensible error for invalid disk name (Martin Kletzander),<br/>
      Log an audit message with the LXC init pid (Daniel P. Berrange),<br/>
      Use virNetServerRun instead of custom main loop (Daniel P. Berrange),<br/>
      storage: Improve virStorageBackendFileSystemStop (Osier Yang),<br/>
      tests: update qemuhelptest data (Ján Tomko),<br/>
      tests: add boot order for host and redirected USB to qemu argv test (Ján Tomko),<br/>
      conf: add support for booting from redirected USB devices (Ján Tomko),<br/>
      qemu: graphics support for simultaneous one of each sdl, vnc, spice (Alon Levy),<br/>
      qemu: refactor graphics code to not hardcode a single display (Alon Levy),<br/>
      snapshot: make cloning of domain definition easier (Eric Blake),<br/>
      snapshot: expose location through virsh snapshot-info (Eric Blake),<br/>
      snapshot: implement new filter sets (Eric Blake),<br/>
      snapshot: add virsh back-compat support for new filters (Eric Blake),<br/>
      snapshot: add two more filter sets to API (Eric Blake),<br/>
      nodeinfo: support kernels that lack socket information (Eric Blake),<br/>
      snapshot: require user to supply external memory file name (Eric Blake),<br/>
      virsh: save: report an error if XML file can't be read (Ján Tomko),<br/>
      virsh: Use virNodeGetCPUMap if possible (Viktor Mihajlovski),<br/>
      python: Use virNodeGetCPUMap where possible (Viktor Mihajlovski),<br/>
      qemu, lxc: Change host CPU number detection logic. (Viktor Mihajlovski),<br/>
      nodeinfo: enable nodeGetCPUCount for older kernels (Viktor Mihajlovski),<br/>
      Use helper functions to format the journal iov array (Miloslav Trmač),<br/>
      Add metadata to virLogOutputFunc (Miloslav Trmač),<br/>
      Add a metadata parameter to virLog{, V}Message (Miloslav Trmač),<br/>
      qemu: add bootindex for usb-host and usb-redir devices (Ján Tomko),<br/>
      build: rerun bootstrap if AUTHORS is missing (Eric Blake),<br/>
      qemu: Don't force port=0 for SPICE (Michal Privoznik),<br/>
      snapshot: qemu: Fix detection of external snapshots when deleting (Peter Krempa),<br/>
      nodeinfotest: Add test data from a AMD bulldozer machine. (Peter Krempa),<br/>
      nodeinfotest: Add test data for 2 processor host with broken NUMA (Peter Krempa),<br/>
      nodeinfo: Add check and workaround to guarantee valid cpu topologies (Peter Krempa),<br/>
      qemu: Allow migration to be cancelled at prepare phase (Michal Privoznik),<br/>
      capabilities: defaultConsoleTargetType can depend on architecture (Viktor Mihajlovski),<br/>
      snapshot: qemu: Add support for external inactive snapshots (Peter Krempa),<br/>
      virsh: add snapshot-create-as memspec support (Eric Blake),<br/>
      virsh: make ,, escape parsing common (Eric Blake),<br/>
      qemu: Emit event if 'cont' fails (Michal Privoznik),<br/>
      Introduce new VIR_DOMAIN_EVENT_SUSPENDED_API_ERROR event (Michal Privoznik),<br/>
      virsh: document which term is older (Eric Blake),<br/>
      tests: Add test for controller order (Michal Privoznik),<br/>
      qemu: Add controllers in specified order (Michal Privoznik),<br/>
      qemu: Wrap controllers code into dummy loop (Michal Privoznik),<br/>
      spec: replace scriptlets with new systemd macros (Václav Pavlín),<br/>
      gitignore: ignore more files (liguang),<br/>
      snapshot: qemu: Remove restrictions preventing external checkpoints (Peter Krempa),<br/>
      snapshot: qemu: Add support for external checkpoints (Peter Krempa),<br/>
      snapshot: qemu: Rename qemuDomainSnapshotCreateActive (Peter Krempa),<br/>
      snapshot: qemu: Add async job type for snapshots (Peter Krempa),<br/>
      snapshot: Add flag to enable creating checkpoints in live state (Peter Krempa),<br/>
      qemu: Split out domain memory saving code to allow reuse (Peter Krempa),<br/>
      qemu: Clean up snapshot retrieval to use the new helper (Peter Krempa),<br/>
      cpu: Add AMD Opteron G5 cpu model (Peter Krempa),<br/>
      cpu: Add newly added cpu flags (Peter Krempa),<br/>
      snapshot: merge pre-snapshot checks (Eric Blake),<br/>
      snapshot: populate new XML info for qemu snapshots (Eric Blake),<br/>
      snapshot: improve disk align checking (Eric Blake),<br/>
      snapshot: new XML for external system checkpoint (Eric Blake),<br/>
      snapshot: simplify OOM checking during parse (Eric Blake),<br/>
      Document bracket whitespace rules &amp; add syntax-check rule (Daniel P. Berrange),<br/>
      net: Mark network persistent when assigning persistent definition (Peter Krempa),<br/>
      net: Add support for changing persistent networks to transient (Peter Krempa),<br/>
      net: Re-use checks when creating transient networks (Peter Krempa),<br/>
      net: Remove dnsmasq and radvd files also when destroying transient nets (Peter Krempa),<br/>
      net: Move creation of dnsmasq hosts file to function starting dnsmasq (Peter Krempa),<br/>
      net: Change argument type of virNetworkObjIsDuplicate() (Peter Krempa),<br/>
      build: Do not ignore logging.c in sc_prohibit_mkstemp (Jiri Denemark),<br/>
      qemu: use default machine type if missing it in qemu command line (Guannan Ren)<br/>
      </li>

      <li>Cleanups:<br/>
      storage: Remove the redundant white lines (Osier Yang),<br/>
      Fix the indention (Osier Yang),<br/>
      Do not export symbol virStateActive anymore (Osier Yang),<br/>
      maint: Misc whitespace cleanups (Peter Krempa),<br/>
      Fix the coding style (Osier Yang),<br/>
      Fix indentions (Osier Yang),<br/>
      qemu: Remove full stop from error messages (Jiri Denemark),<br/>
      build: more fix to avoid C99 for loop (Hu Tao),<br/>
      nwfilter: drop dead code (Eric Blake),<br/>
      qemu: Drop word "either" from comments for agent monitor functions (Peter Krempa),<br/>
      s/qemud/qemu/ in QEMU driver sources (Daniel P. Berrange),<br/>
      Remove bogus newline at end of debug log message (Daniel P. Berrange),<br/>
      build: avoid C99 for loop (Eric Blake),<br/>
      util: Fix the indention (Osier Yang),<br/>
      qemu/qemu_command.c: fix indent of label (Alon Levy),<br/>
      qemu: Beautify code indent in migration codes (liguang),<br/>
      qemu: Fix function header formating of 2 functions (Peter Krempa),<br/>
      Remove spurious whitespace between function name &amp; open brackets (Daniel P. Berrange),<br/>
      Remove a chunk which should not have been pushed as part of 1.0.0 (Daniel Veillard),<br/>
      logging.c: Properly indent and ignore one syntax-check rule (Michal Privoznik)<br/>
      </li>
    </ul>

    <h3>1.0.0: Nov 02 2012</h3>
    <ul>
      <li>Features:<br/>
      virNodeGetCPUMap: Define public API. (Viktor Mihajlovski),<br/>
      Add systemd journal support (Daniel P. Berrange),<br/>
      Add a qemu capabilities cache manager (Daniel P. Berrange),<br/>
      USB migration support (Jiri Denemark),<br/>
      various improvement and fixes when using QMP QEmu interface<br/>
      Support for Xen 4.2 (Jim Fehlig),<br/>
      Lot of localization enhancements (Transifex teams)<br/>
      </li>

      <li>Documentation:<br/>
      net-update docs: s/domain/network/ (Michal Privoznik),<br/>
      libvirtd no longer uses abstract namespace (Eric Blake),<br/>
      documentation: HTML tag fix (Philipp Hahn),<br/>
      virsh: Fix POD syntax (Jiri Denemark),<br/>
      Fix installation of internals/*.html (Cole Robinson),<br/>
      virsh: clarify behavior of send-key (Cole Robinson),<br/>
      maint: fix license on polkit script (Eric Blake),<br/>
      Sort out the relationship between &lt;vcpu&gt;, &lt;vcpupin&gt;, and &lt;emulatorpin&gt; (Osier Yang),<br/>
      Tweak comments in the policykit rules file (Cole Robinson),<br/>
      Various typos and misspellings (Ján Tomko),<br/>
      qemu: Fix misleading comment for qemuDomainObjBeginJobWithDriver() (Peter Krempa),<br/>
      Correct name of domain/pm/suspend-to-mem in docs (Zeeshan Ali (Khattak)),<br/>
      update description about user/group in qemu.conf (Marcelo Cerri),<br/>
      Drop useless &lt;/p&gt; in drvphyp.html.in (Michal Privoznik),<br/>
      fix links in migration.html TOC (Eric Blake),<br/>
      Add Maven repository to Java bindings documentation (Wido den Hollander),<br/>
      rudimentary phyp documentation (Eric Blake),<br/>
      update description about security labels on formatdomain.html (Marcelo Cerri),<br/>
      Add note about numeric domain names to manpage (Dave Allan),<br/>
      Fix typo in header file comment (Daniel P. Berrange),<br/>
      Update how to compile with -Werror (Doug Goldstein),<br/>
      node_memory: Improve the docs (Osier Yang)<br/>
      </li>

      <li>Portability:<br/>
      Don't assume pid_t is the same size as an int (Daniel P. Berrange),<br/>
      build: Fix RPM build for non-x86 platforms (Viktor Mihajlovski),<br/>
      build: fix linking with systemtap probes (Eric Blake),<br/>
      parallels: fix build for some older compilers (Laine Stump),<br/>
      Fix build with apparmor (Jiri Denemark),<br/>
      build: use correct printf types for uid/gid (Eric Blake),<br/>
      spec: Fix multilib issue with systemtap tapsets (Cole Robinson),<br/>
      spec: Require newer sanlock on recent distros 2 (Jiri Denemark),<br/>
      spec: Add runtime requirement for libssh2 (Peter Krempa),<br/>
      spec: Require newer sanlock on recent distros (Jiri Denemark),<br/>
      locking: Fix build with sanlock &lt; 2.4 (Jiri Denemark),<br/>
      Fix virProcessKillPainfully on Win32 (Daniel P. Berrange),<br/>
      Properly parse (unsigned) long long (Guido Günther),<br/>
      win32: Pretend that close-on-exec works (Matthias Bolte),<br/>
      build: fix VPATH builds (Eric Blake),<br/>
      build: avoid journald on rhel 5 (Eric Blake),<br/>
      build: fix bitmap conversion when !CPU_ALLOC (Eric Blake),<br/>
      Fix compilation of legacy xen driver with Xen 4.2 (Jim Fehlig),<br/>
      build: fix detection of netcf linked with libnl1 (Christophe Fergeau)<br/>
      </li>

      <li>Bug Fixes:<br/>
      qemu: QMP capabilities support starts with 1.2 (Doug Goldstein),<br/>
      Linux Containers are not allowed to create device nodes. (Dan Walsh),<br/>
      qemu: Fix name comparison in qemuMonitorJSONBlockIoThrottleInfo() (Stefan Hajnoczi),<br/>
      qemu: Keep QEMU host drive prefix in BlkIoTune (Stefan Hajnoczi),<br/>
      iohelper: fdatasync() at the end (Michal Privoznik),<br/>
      conf: Fix private symbols exported by files in conf (Peter Krempa),<br/>
      Fix arch detection for qemu-system-i386 with QMP (Daniel P. Berrange),<br/>
      build: prefer mkostemp for multi-thread safety (Eric Blake),<br/>
      qemu: Fix EmulatorPinInfo without emulatorpin (Martin Kletzander),<br/>
      ip6tables rule removal (Gene Czarcinski),<br/>
      Create temporary dir for socket (Guido Günther),<br/>
      cpu: Fix definition of flag smap (Peter Krempa),<br/>
      nodeinfotest: Delete NUL bytes from test data (Peter Krempa),<br/>
      qemu: Do not ignore address for USB disks (Vladislav Bogdanov),<br/>
      esx: Fix connection to ESX 5.1 (Martin Kletzander),<br/>
      build: place attributes in correct location (Eric Blake),<br/>
      qemu: Fix domxml-to-native network model conversion (Cole Robinson),<br/>
      build: typo fix for qemu cpu affinity (Eric Blake),<br/>
      qemu: fix attach/detach of netdevs with matching mac addrs (Laine Stump),<br/>
      cpustat: fix regression when cpus are offline (Eric Blake),<br/>
      build: fix type-punning bug (Eric Blake),<br/>
      network: fix networkValidate check for default portgroup and vlan (Laine Stump),<br/>
      Fix detection of Xen sysctl version 9 (Jim Fehlig),<br/>
      selinux: Don't fail RestoreAll if file doesn't have a default label (Cole Robinson),<br/>
      xml: omit domain name from comment if it contains double hyphen (Ján Tomko),<br/>
      Fix disabling of apparmor/selinux security drivers (Christophe Fergeau),<br/>
      storage: Don't do wait loops from VolLookupByPath (Cole Robinson),<br/>
      qemu: Don't use -enable-nesting with qemu 1.2.0+ (Cole Robinson),<br/>
      qemu: Don't blindly assume VNC is supported (Doug Goldstein),<br/>
      test: Don't assume VNC is always available (Doug Goldstein),<br/>
      virsh: Fix segfault of snapshot-list (Osier Yang),<br/>
      qemu: Fix the unused parameter which causes the build failure (Osier Yang),<br/>
      daemon: Avoid 'Could not find keytab file' in syslog (Cole Robinson),<br/>
      network: don't allow multiple default portgroups (Laine Stump),<br/>
      network: always create dnsmasq hosts and addnhosts files, even if empty (Laine Stump),<br/>
      network: free/null newDef if network fails to start (Laine Stump),<br/>
      blockjob: avoid segv on early error (Eric Blake),<br/>
      selinux: relabel tapfd in qemuPhysIfaceConnect (Guannan Ren),<br/>
      qemu: Set arch to i686 if qemu-system-i386 is found (Guido Günther),<br/>
      qemu: Don't fail without emulatorpin or cpumask (Guido Günther),<br/>
      network: Set to NULL after virNetworkDefFree() (Michal Privoznik),<br/>
      spec: Fix dependency for lock-sanlock subpackage (Jiri Denemark),<br/>
      qemu: Correctly wait for spice to migrate (Michal Privoznik),<br/>
      qemu: Clear async job when p2p migration fails early (Jiri Denemark),<br/>
      selinux: fix wrong tapfd relablling (Guannan Ren),<br/>
      storage: lvm: lvcreate fails with allocation=0, don't do that (Cole Robinson),<br/>
      conf: Fix crash with cleanup (Martin Kletzander),<br/>
      Avoid straying &lt;/cpuset&gt; (Guido Günther),<br/>
      conf: fix virDevicePCIAddressEqual args (Laine Stump),<br/>
      virsh: block SIGINT while getting BlockJobInfo (Ján Tomko),<br/>
      esx: Fix dynamic dispatch for types with more than one level of inheritance (Matthias Bolte),<br/>
      qemu: Fix QMP detection of QXL graphics (Jiri Denemark),<br/>
      Call curl_global_init from virInitialize to avoid thread-safety issues (Matthias Bolte),<br/>
      fix kvm_pv_eoi with kvmclock (Martin Kletzander),<br/>
      Fix typo in HAVE_DBUS automake conditional (Alexander Larsson),<br/>
      esx: Disable libcurl's use of signals to fix a segfault (Matthias Bolte),<br/>
      S390: Buffer too small for large CPU numbers. (Viktor Mihajlovski),<br/>
      Correct checking of virStrcpyStatic() return value (Kyle Mestery),<br/>
      qemu: Kill processes used for QMP caps probing (Jiri Denemark),<br/>
      qemu: Use proper agent entering function when freezing filesystems (Peter Krempa),<br/>
      lxc: Correctly report active cgroups (Michal Privoznik),<br/>
      build: avoid infinite autogen loop (Eric Blake),<br/>
      Avoid bogus I/O event errors when closing the QEMU monitor (Daniel P. Berrange),<br/>
      Fix QEMU test with 1.2.0 help output (Daniel P. Berrange),<br/>
      network: fix dnsmasq/radvd binding to IPv6 on recent kernels (Benjamin Cama),<br/>
      Fix regression starting QEMU instances without query-events (Daniel P. Berrange),<br/>
      Fix handling of itanium arch name in QEMU driver (Daniel P. Berrange),<br/>
      Fix potential deadlock when agent is closed (Daniel P. Berrange),<br/>
      Fix (rare) deadlock in QEMU monitor callbacks (Daniel P. Berrange),<br/>
      Don't skip over socket label cleanup (Daniel P. Berrange),<br/>
      Don't ignore return value of qemuProcessKill (Daniel P. Berrange),<br/>
      Fix deadlock in handling EOF in LXC monitor (Daniel P. Berrange),<br/>
      parallels: don't give null pointers to virBitmapEqual (Dmitry Guryanov),<br/>
      parallels: fix memory allocation (Dmitry Guryanov),<br/>
      qemu: wait for SPICE to migrate (Michal Privoznik),<br/>
      Don't use O_TRUNC when opening QEMU logfiles (Daniel P. Berrange),<br/>
      Fix start of containers with custom root filesystem (Daniel P. Berrange)<br/>
      </li>

      <li>Improvements:<br/>
      cpumap: optimize for clients that don't need online count (Eric Blake),<br/>
      daemon: Make the default PolicyKit policy auth_admin_keep. (Richard W.M. Jones),<br/>
      util: Improve error reporting from absolutePathFromBaseFile helper (Peter Krempa),<br/>
      Make non-KVM machines work with QMP probing (Martin Kletzander),<br/>
      maint: log xml during volume creation (Eric Blake),<br/>
      util: do a better job of matching up pids with their binaries (Laine Stump),<br/>
      sanlock: Introduce 'user' and 'group' conf variables (Michal Privoznik),<br/>
      qemu: pass -usb and usb hubs earlier, so USB disks with static address are handled properly (Vladislav Bogdanov),<br/>
      qemu: Report errors from iohelper (Michal Privoznik),<br/>
      util: Re-format literal strings in virXMLEmitWarning (Peter Krempa),<br/>
      xml: print uuids in the warning (Ján Tomko),<br/>
      blockjob: relabel entire existing chain (Eric Blake),<br/>
      blockjob: allow mirroring under SELinux and cgroup (Eric Blake),<br/>
      blockjob: allow for existing files in block-copy (Eric Blake),<br/>
      blockjob: implement block copy for qemu (Eric Blake),<br/>
      blockjob: make block pivot safer (Eric Blake),<br/>
      blockjob: support pivot operation on cancel (Eric Blake),<br/>
      blockjob: return appropriate event and info (Eric Blake),<br/>
      blockjob: react to active block copy (Eric Blake),<br/>
      blockjob: add qemu capabilities related to block jobs (Eric Blake),<br/>
      build: check for pod errors (Eric Blake),<br/>
      build: silence compiler warning about signedness (Eric Blake),<br/>
      maint: Sort .gitignore (Peter Krempa),<br/>
      virsh: Remove --flags from nodesuspend (Jiri Denemark),<br/>
      snapshot: improve snapshot-list error message (Eric Blake),<br/>
      maint: ignore unsaved emacs files (Eric Blake),<br/>
      daemon: Fix LIBVIRT_DEBUG=1 default output (Cole Robinson),<br/>
      virNodeGetCPUMap: Add python binding (Viktor Mihajlovski),<br/>
      virNodeGetCPUMap: Implement driver support (Viktor Mihajlovski),<br/>
      virNodeGetCPUMap: Implement support function in nodeinfo (Viktor Mihajlovski),<br/>
      nodeinfo: improve probing node cpu bitmap (Eric Blake),<br/>
      bitmap: add virBitmapCountBits (Eric Blake),<br/>
      esx: Update version checks for vSphere 5.1 (Matthias Bolte),<br/>
      cpu: Add recently added cpu feature flags. (Peter Krempa),<br/>
      qemu: Prohibit changing affinity of domain process if placement is 'auto' (Osier Yang),<br/>
      qemu: Keep the affinity when creating cgroup for emulator thread (Osier Yang),<br/>
      qemu: Add helper to prepare cpumap for affinity setting (Osier Yang),<br/>
      virNodeGetCPUMap: Implement virsh support. (Viktor Mihajlovski),<br/>
      libvirt.h.in: Add new cpumap macro VIR_CPU_USED (Viktor Mihajlovski),<br/>
      virNodeGetCPUMap: Implement wire protocol. (Viktor Mihajlovski),<br/>
      header: declare node memory parameter handling earlier (Eric Blake),<br/>
      header: declare typed parameter handling earlier (Eric Blake),<br/>
      build: improve FORTIFY_SOURCE usage (Eric Blake),<br/>
      qemu_migration: Transport OVS per-port data during live migration (Kyle Mestery),<br/>
      openvswitch: Add utility functions for getting and setting Open vSwitch per-port data (Kyle Mestery),<br/>
      qemu_migration: Add hooks to transport network data during migration (Kyle Mestery),<br/>
      build: print uids as unsigned (Eric Blake),<br/>
      storage: don't shadow global 'wait' declaration (Ján Tomko),<br/>
      maint: update to latest gnulib (Eric Blake),<br/>
      snapshot: sanity check when reusing file for snapshot (Eric Blake),<br/>
      storage: let format probing work on root-squash NFS (Eric Blake),<br/>
      migrate: v2: use VIR_DOMAIN_XML_MIGRATABLE when available (Ján Tomko),<br/>
      qemu: set seamless migration capability (Michal Privoznik),<br/>
      Log parameters passed to virFileMakePath (Cole Robinson),<br/>
      Log file name passed to virConfReadFile (Cole Robinson),<br/>
      blockjob: properly label disks for qemu block-commit (Eric Blake),<br/>
      blockjob: refactor qemu disk chain permission grants (Eric Blake),<br/>
      blockjob: implement shallow commit flag in qemu (Eric Blake),<br/>
      blockjob: wire up online qemu block-commit (Eric Blake),<br/>
      blockjob: manage qemu block-commit monitor command (Eric Blake),<br/>
      blockjob: remove unused parameters after previous patch (Eric Blake),<br/>
      storage: use cache to walk backing chain (Eric Blake),<br/>
      storage: cache backing chain while qemu domain is live (Eric Blake),<br/>
      storage: make it easier to find file within chain (Eric Blake),<br/>
      storage: remember relative names in backing chain (Eric Blake),<br/>
      storage: don't require caller to pre-allocate metadata struct (Eric Blake),<br/>
      storage: get entire metadata chain in one call (Eric Blake),<br/>
      storage: don't probe non-files (Eric Blake),<br/>
      storage: use enum for snapshot driver type (Eric Blake),<br/>
      storage: use enum for disk driver type (Eric Blake),<br/>
      storage: use enum for default driver type (Eric Blake),<br/>
      storage: match RNG to supported driver types (Eric Blake),<br/>
      storage: treat 'aio' like 'raw' at parse time (Eric Blake),<br/>
      storage: list more file types (Eric Blake),<br/>
      Autogenerate AUTHORS (Cole Robinson),<br/>
      qemu: Allow migration with host USB devices (Jiri Denemark),<br/>
      dist: added cpu/cpu_ppc_data.h to Makefile.am (Viktor Mihajlovski),<br/>
      qemu: Always format CPU topology (Jiri Denemark),<br/>
      qemu: Add support for HyperV Enlightenment feature "relaxed" (Peter Krempa),<br/>
      conf: Add support for HyperV Enlightenment features (Peter Krempa),<br/>
      conf: Make tri-state feature options more universal (Peter Krempa),<br/>
      qemu: Fixed default machine detection in qemuCapsParseMachineTypesStr (Viktor Mihajlovski),<br/>
      qemu: Pin the emulator when only cpuset is specified (Martin Kletzander),<br/>
      interface: add virInterfaceGetXMLDesc() in udev (Doug Goldstein),<br/>
      Implement CPU model driver for PowerPC (Li Zhang),<br/>
      Add one file cpu_ppc_data.h to define CPU data for PPC (Li Zhang),<br/>
      selinux: remove unused variables in socket labelling (Guannan Ren),<br/>
      storage: lvm: Don't overwrite lvcreate errors (Cole Robinson),<br/>
      Make virInitialize thread safe (Daniel P. Berrange),<br/>
      Add JSON serialization of virNetServerPtr objects for process re-exec() (Daniel P. Berrange),<br/>
      Add JSON serialization of virNetServerClientPtr objects for process re-exec() (Daniel P. Berrange),<br/>
      Add JSON serialization of virNetServerServicePtr objects for process re-exec() (Daniel P. Berrange),<br/>
      Add JSON serialization of virNetSocketPtr objects for process re-exec() (Daniel P. Berrange),<br/>
      Add JSON serialization of virLockSpacePtr objects for process re-exec() (Daniel P. Berrange),<br/>
      Introduce an internal API for handling file based lockspaces (Daniel P. Berrange),<br/>
      tests: Fix domain-events python test (Martin Kletzander),<br/>
      maint: prepare for next release number (Eric Blake),<br/>
      conf: add test for boot dev and order (Martin Kletzander),<br/>
      selinux: Use raw contexts 2 (Martin Kletzander),<br/>
      selinux: add security selinux function to label tapfd (Guannan Ren),<br/>
      Add support for SUSPEND_DISK event (Martin Kletzander),<br/>
      util: switch virLogEatParams to virLogSource (Ján Tomko),<br/>
      node_memory: Add new parameter field to tune the new sysfs knob (Osier Yang),<br/>
      qemu: reorganize qemuDomainChangeNet and qemuDomainChangeNetBridge (Laine Stump),<br/>
      conf: virDomainDeviceInfoCopy utility function (Laine Stump),<br/>
      qemu: Ignore def-&gt;cpumask if emulatorpin is specified (Osier Yang),<br/>
      conf: Ignore emulatorpin if vcpu placement is auto (Osier Yang),<br/>
      qemu: Initialize cpuset for hotplugged vcpu as def-&gt;cpuset (Osier Yang),<br/>
      qemu: Create or remove cgroup when doing vcpu hotpluging (Osier Yang),<br/>
      conf: Initialize the pinning policy for vcpus (Osier Yang),<br/>
      conf: Ignore vcpupin for not onlined vcpus when parsing (Osier Yang),<br/>
      Only keep one polkit rules file (Cole Robinson),<br/>
      daemon: Use $(AM_V_GEN) in a few more places (Cole Robinson),<br/>
      spec: Add support for libssh2 transport (Peter Krempa),<br/>
      selinux: Use raw contexts (Martin Kletzander),<br/>
      conf: Mark missing optional USB devices in domain XML (Jiri Denemark),<br/>
      virsh: remove reference to migration in blockcopy (Ján Tomko),<br/>
      qemu: Make save/restore with USB devices usable (Jiri Denemark),<br/>
      Add MIGRATABLE flag for virDomainGetXMLDesc (Jiri Denemark),<br/>
      qemu: Implement startupPolicy for USB passed through devices (Jiri Denemark),<br/>
      qemu: Add option to treat missing USB devices as success (Jiri Denemark),<br/>
      qemu: Introduce qemuFindHostdevUSBDevice (Jiri Denemark),<br/>
      conf: Add support for startupPolicy for USB devices (Jiri Denemark),<br/>
      locking: Implement lock failure action in sanlock driver (Jiri Denemark),<br/>
      locking: Add support for lock failure action (Jiri Denemark),<br/>
      locking: Pass hypervisor driver name when acquiring locks (Jiri Denemark),<br/>
      locking: Add const char * parameter to avoid ugly typecasts (Jiri Denemark),<br/>
      conf: Add on_lockfailure event configuration (Jiri Denemark),<br/>
      conf: Rename life cycle actions to event actions (Jiri Denemark),<br/>
      storage: Report UUID/name consistently in driver errors (Cole Robinson),<br/>
      Change qemuSetSchedularParameters to use AFFECT_CURRENT (Daniel P. Berrange),<br/>
      interface: add udevIfaceIsActive() to udev backend (Doug Goldstein),<br/>
      interface: always build all available backends (Doug Goldstein),<br/>
      interface: fix netcf based backend naming (Doug Goldstein),<br/>
      interface: add udev based backend for virInterface (Doug Goldstein),<br/>
      hooks: let virCommand do the error reporting (Eric Blake),<br/>
      nodeinfo: Fully convert to new virReportError (Michal Privoznik),<br/>
      virsh: add qemu-monitor-command --pretty (Eric Blake),<br/>
      security: update user and group parsing in security_dac.c (Marcelo Cerri),<br/>
      util: extend virGetUserID and virGetGroupID to support names and IDs (Marcelo Cerri),<br/>
      python: keep consistent handling of Python integer conversion (Guannan Ren),<br/>
      python: cleanup vcpu related binding APIs (Guannan Ren),<br/>
      Check for private symbols presence as well (Michal Privoznik),<br/>
      spec: prefer canonical name of util-linux (Eric Blake),<br/>
      build: update gnulib for FreeBSD build (Eric Blake),<br/>
      security: also parse user/group names instead of just IDs for DAC labels (Marcelo Cerri),<br/>
      build: avoid -Wno-format on new-enough gcc (Eric Blake),<br/>
      build: fix typo in debug message (Eric Blake),<br/>
      hyperv: Fix and improve hypervListAllDomains (Matthias Bolte),<br/>
      esx: Fix and improve esxListAllDomains function (Matthias Bolte),<br/>
      build: default selinuxfs mount point to /sys/fs/selinux (Daniel J Walsh),<br/>
      Add support for detecting capablities using QMP commands (Daniel P. Berrange),<br/>
      Ignore error from query-cpu-definitions (Daniel P. Berrange),<br/>
      Remove need to pass in a virDomainObjPtr instance to qemuMonitorOpen (Daniel P. Berrange),<br/>
      ARMHF: implement /proc/cpuinfo parsing (Chuck Short),<br/>
      Automatically enable systemd journal logging (Daniel P. Berrange),<br/>
      Refactor qemuCapsParseDeviceStr to work from data tables (Daniel P. Berrange),<br/>
      Don't initialize logging twice in libvirtd (Daniel P. Berrange),<br/>
      Change logging category parameter into an enum (Daniel P. Berrange),<br/>
      Include filename explicitly in logging APIs (Daniel P. Berrange),<br/>
      Whitespace cleanup in logging files (Daniel P. Berrange),<br/>
      s/int/virLogDestination/ in logging code (Daniel P. Berrange),<br/>
      s/long long/size_t/ for file line numbers in logging code (Daniel P. Berrange),<br/>
      s/int/virLogPriority/ in logging code (Daniel P. Berrange),<br/>
      python: return error if PyObject obj is NULL for unwrapper helper functions (Guannan Ren),<br/>
      Pass the "raw" log message to each virLogOutputFunc (Miloslav Trmač),<br/>
      Split priority conversion from virLogOutputToSyslog (Miloslav Trmač),<br/>
      Move command/event capabilities detection out of QEMU monitor code (Daniel P. Berrange),<br/>
      Remove some unused includes in QEMU code (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetTargetArch() method for QMP query-target command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetObjectProps() method for QMP device-list-properties command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetObjectTypes() method for QMP qom-list-types command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetEvents() method for QMP query-events command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetCommands() method for QMP query-commands command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetCPUDefinitions method for QMP query-cpu-definitions command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetMachines() method for QMP query-machines command (Daniel P. Berrange),<br/>
      Add a qemuMonitorGetVersion() method for QMP query-version command (Daniel P. Berrange),<br/>
      Refactor guest init to support qemu-system-i386 binary too (Daniel P. Berrange),<br/>
      Make qemuCapsProbeMachineTypes &amp; qemuCapsProbeCPUModels static (Daniel P. Berrange),<br/>
      Remove probing of CPU models when launching QEMU guests (Daniel P. Berrange),<br/>
      Remove probing of machine types when canonicalizing XML (Daniel P. Berrange),<br/>
      Remove probing of flags when launching QEMU guests (Daniel P. Berrange),<br/>
      Switch over to use cache for building QEMU capabilities (Daniel P. Berrange),<br/>
      Use size_t instead of int for virDomainDefPtr struct (Daniel P. Berrange),<br/>
      Move most of qemuProcessKill into virProcessKillPainfully (Daniel P. Berrange),<br/>
      Support Xen sysctl version 9 in Xen 4.2 (Jim Fehlig),<br/>
      network: backend for virNetworkUpdate of interface list (Laine Stump),<br/>
      build: avoid older gcc warning (Eric Blake),<br/>
      Simplify some redundant locking while unref'ing objects (Daniel P. Berrange),<br/>
      Convert virLXCMonitor to use virObject (Daniel P. Berrange),<br/>
      Move virProcess{Kill,Abort,TranslateStatus} into virprocess.{c,h} (Daniel P. Berrange),<br/>
      Move virProcessKill into virprocess.{h,c} (Daniel P. Berrange),<br/>
      Rename virCommandTranslateStatus to virProcessTranslateStatus (Daniel P. Berrange),<br/>
      Rename virPid{Abort,Wait} to virProcess{Abort,Wait} (Daniel P. Berrange),<br/>
      Rename virKillProcess to virProcessKill (Daniel P. Berrange),<br/>
      qemu: Avoid holding the driver lock in trivial snapshot API's (Peter Krempa),<br/>
      storage: Add timeout for iscsi volume's stable path discovery (Osier Yang),<br/>
      tests: test previous commit (Eric Blake),<br/>
      command: Change virCommandAddEnv so it replaces existing environment variables. (Richard W.M. Jones),<br/>
      command: Move environ-adding code to common function virCommandAddEnv. (Richard W.M. Jones)<br/>
      </li>

      <li>Cleanups:<br/>
      gitignore: Ignore 'tags' (Michal Privoznik),<br/>
      build: fix syntax-check tab violation (Eric Blake),<br/>
      maint: consistent whitespace after 'if' (Eric Blake),<br/>
      Remove a couple duplicates from AUTHORS.in (Cole Robinson),<br/>
      qemu: Cleanup the unused 'nodeinfo' (Osier Yang),<br/>
      AUTHORS: Remove double entry (Michal Privoznik),<br/>
      Doc-fix for PowerPC CPU model driver (Li Zhang),<br/>
      Fix typo in previous commit s/lik/like/ (Daniel P. Berrange),<br/>
      maint: drop spurious semicolons (Eric Blake),<br/>
      Fix tab vs space (Guido Günther),<br/>
      private.syms: Drop virKillProcess (Michal Privoznik),<br/>
      Remove xenner support (Daniel P. Berrange),<br/>
      parallels: remove unneded code from parallelsDoCmdRun (Dmitry Guryanov),<br/>
      parallels: remove unused member 'os' from parallelsDomObj (Dmitry Guryanov),<br/>
      Remove pointless virLXCProcessMonitorDestroy method (Daniel P. Berrange)<br/>
      </li>
    </ul>

    <h3>0.10.2: Sep 24 2012</h3>
    <ul>
      <li>Features:<br/>
      network: define new API virNetworkUpdate (Laine Stump),<br/>
      add support for QEmu sandbox support (Ján Tomko),<br/>
      blockjob: add virDomainBlockCommit (Eric Blake),<br/>
      node_memory: Define the APIs to get/set memory parameters (Osier Yang),<br/>
      list: Define new API virConnectListAllSecrets (Osier Yang),<br/>
      list: Define new API virConnectListAllNWFilters (Osier Yang),<br/>
      list: Define new API virConnectListAllNodeDevices (Osier Yang),<br/>
      parallels: add support of containers to the driver (Dmitry Guryanov),<br/>
      list: Define new API virConnectListAllInterfaces (Osier Yang),<br/>
      list: Define new API virConnectListAllNetworks (Osier Yang),<br/>
      list: Define new API virStoragePoolListAllVolumes (Osier Yang),<br/>
      Add PMSUSPENDED life cycle event (Jiri Denemark),<br/>
      list: Define new API virStorageListAllStoragePools (Osier Yang),<br/>
      Add per-guest S3/S4 state configuration (Martin Kletzander),<br/>
      qemu: Support for Block Device IO Limits (Viktor Mihajlovski)<br/>
      </li>

      <li>Documentation:<br/>
      locking: Remove README file in favor of internals/locking.html (Jiri Denemark),<br/>
      fix typo in filesystem docs (Eric Blake),<br/>
      include article about libvirt+audit in relatedlinks.html (Marcelo Cerri),<br/>
      virsh: Clarify behavior of domain list filtering (Peter Krempa),<br/>
      update usb redirection filter infomation on formatdomain.html (Guannan Ren),<br/>
      mention another iaas app built on libvirt (Eric Blake),<br/>
      page.xsl: fix FAQ link in subdirectories (Ján Tomko),<br/>
      hacking.html.in: fix table of contents (Ján Tomko),<br/>
      point out git send-email location, be more stern about make check (Laine Stump),<br/>
      examples: Fix event detail printing in python test (Jiri Denemark),<br/>
      virsh: Improve the document for pool-list (Osier Yang),<br/>
      conf: describe security_driver behavior (Martin Kletzander),<br/>
      correct dompmwakeup description (Martin Kletzander)<br/>
      </li>

      <li>Portability:<br/>
      build: fix nodeinfo build on non-Linux platforms (Eric Blake),<br/>
      virBitmap: fix build without HAVE_NUMACTL (Ján Tomko),<br/>
      build: Fix build failure on non-linux platform (Osier Yang),<br/>
      build: fix missing include (Dwight Engen),<br/>
      Look in Debian's multiarch libs too (Guido Günther),<br/>
      build: don't fail if libnl-3 is not found (Eric Blake),<br/>
      build: Fix typo which causes build failure (Osier Yang),<br/>
      build: force libnl1 if netcf also used libnl1 (Eric Blake),<br/>
      build: fix build on older gcc (Eric Blake),<br/>
      Fix location of SELinux mount during RPM builds (Daniel P. Berrange),<br/>
      nwfilter: drop use of awk (Eric Blake),<br/>
      build: improved handling of &lt;execinfo.h&gt;, BSD &lt;net/if.h&gt; (Eric Blake),<br/>
      Define DYNLIB_NAME on OpenBSD (Jasper Lievisse Adriaanse),<br/>
      build: avoid test failure when sasl was not compiled in (Eric Blake),<br/>
      build: avoid check-symfile on non-Linux (Eric Blake),<br/>
      build: require netcf-0.2.2 when installing on Fedora18+ (Laine Stump),<br/>
      build: don't fail when xsltproc is missing (Eric Blake),<br/>
      build: avoid warnings from gcc 4.2.1 (Eric Blake),<br/>
      Remove explicit dependency on ceph RPM (Daniel P. Berrange),<br/>
      Pass a correct pointer type to localtime_r(3) (Paul Eggert),<br/>
      build: use correct libraries for clock_gettime (Eric Blake),<br/>
      Include an extra header needed for OpenBSD (Jasper Lievisse Adriaanse),<br/>
      Fix mingw64 build by using intptr_t for int-&gt;void* casts (Daniel P. Berrange)<br/>
      </li>

      <li>Bug Fixes:<br/>
      network: don't "refresh" iptables rules on rule-less networks (Laine Stump),<br/>
      qemu: Fix failure path in disk hotplug (Jiri Denemark),<br/>
      Ensure existing selinux mount is removed before mounting new one in LXC (Daniel P. Berrange),<br/>
      Fix crash accessing a NULL URI when looking up auth credentials (Daniel P. Berrange),<br/>
      Ensure autogen.sh exists if bootstrap fails (Daniel P. Berrange),<br/>
      security: Don't ignore errors when parsing DAC security labels (Peter Krempa),<br/>
      qemu: Transition domain to PAUSED after 'stop' command (Michal Privoznik),<br/>
      network: fix element size / length in memmove (Laine Stump),<br/>
      network: fix incorrect VIR_NETWORK_UPDATE_COMMAND_* values (Laine Stump),<br/>
      virsh: Fix resource leaks when editing files (Peter Krempa),<br/>
      util: don't print free'd dmidecode path (Eric Blake),<br/>
      rpc: Fix name of member in remote_protocol-structs (Peter Krempa),<br/>
      qemu: Avoid deadlock on HandleAgentEOF (Michal Privoznik),<br/>
      conf: avoid freeing network object with undestroyed mutex (Laine Stump),<br/>
      Add missing 'goto error' in QEMU command line building (Daniel P. Berrange),<br/>
      Fix initialization of virCommandPtr when creating QEMU argv (Daniel P. Berrange),<br/>
      Fix 3 broken test cases which were mistakenly raising errors (Daniel P. Berrange),<br/>
      qemu: fix uninitialized variable in qemuParseCommandLine (Ján Tomko),<br/>
      security: Fix libvirtd crash possibility (Martin Kletzander),<br/>
      snapshot: fix rollback failure in transaction mode (Guannan Ren),<br/>
      conf: avoid libvirt crash with empty address guestfwd channel (Alex Jia),<br/>
      Wait to receive QMP greeting before sending any monitor commands (Daniel P. Berrange),<br/>
      parallels: fix parallelsDomainDefineXML for domains with VNC and autoport (Dmitry Guryanov),<br/>
      parallels: fix parallelsDoCmdRun in case of command failure (Dmitry Guryanov),<br/>
      Backcompt for console devices in virDomainDeviceInfoIterate (Li Zhang),<br/>
      fix bug in qemuSetupCgroupForEmulator (Hu Tao),<br/>
      python: Initialize new_params in virDomainSetSchedulerParameters (Federico Simoncelli),<br/>
      Don't invoke the auth callback if all credentials were in config file (Daniel P. Berrange),<br/>
      Call virResetLastError in all virConnectOpen* functions (Daniel P. Berrange),<br/>
      Check against python None type when filling in auth parameters (Daniel P. Berrange),<br/>
      Fix crash passing an empty list to python openAuth() API (Daniel P. Berrange),<br/>
      Fix unwanted closing of libvirt client connection (Christophe Fergeau),<br/>
      Fix RPM spec conditional when %{rhel} is not defined (Daniel P. Berrange),<br/>
      events: Fix domain event race on client disconnect (Christophe Fergeau),<br/>
      Don't assume use of /sys/fs/cgroup (Daniel P. Berrange),<br/>
      remove dnsmasq command line parameter "--filterwin2k" (Gene Czarcinski),<br/>
      network: prevent infinite hang if ovs-vswitchd isn't running (Laine Stump),<br/>
      qemu: don't pin all the cpus (Martin Kletzander),<br/>
      build: use re-entrant functions in virsh (Eric Blake),<br/>
      qemu: Do not require auth scheme in graphics events (Jiri Denemark),<br/>
      qemu: Fix reboot with guest agent (Jiri Denemark),<br/>
      qemu: Don't update graphic definitions on password change failure (Peter Krempa),<br/>
      python: don't mask libvirt errors (Eric Blake),<br/>
      command: shell-quote when logging commands (Eric Blake),<br/>
      qemu: fix remote port searching (Martin Kletzander),<br/>
      schemas: Fix wwn pattern (Osier Yang)<br/>
      </li>

      <li>Improvements:<br/>
      Don't install legacy initscripts at same time as systemd ones (Daniel P. Berrange),<br/>
      network: log error for unknown virNetworkUpdate command codes (Laine Stump),<br/>
      network: make virNetworkObjUpdate error detection/recovery better (Laine Stump),<br/>
      Drop unused return value of virLogOutputFunc (Miloslav Trmač),<br/>
      Add &lt;lt;seclabel&gt; to character devices (Richard W.M. Jones),<br/>
      Make virSecurityDeviceLabelDefParseXML into generic device &lt;lt;seclabel&gt; parser (Richard W.M. Jones),<br/>
      Improve some debugging log messages in LXC mount setup (Daniel P. Berrange),<br/>
      network: backend for virNetworkUpdate of portgroups (Laine Stump),<br/>
      network: backend for virNetworkUpdate of dhcp range (Laine Stump),<br/>
      virsh: new net-update command (Laine Stump),<br/>
      tests: Add tests for dump-core option (Martin Kletzander),<br/>
      qemu: add support for dump-guest-core option (Martin Kletzander),<br/>
      Add support for limiting guest coredump (Martin Kletzander),<br/>
      QEMU Tests for reboot-timeout (Martin Kletzander),<br/>
      qemu: Add support for reboot-timeout (Martin Kletzander),<br/>
      Add support for reboot-timeout (Martin Kletzander),<br/>
      simplify xenXMDomainPinVcpu function (liguang),<br/>
      Cleanup of domain_conf sentinels (Martin Kletzander),<br/>
      qemu: Cleanup boot parameter building (Martin Kletzander),<br/>
      virsh: Move daemon to misc since its not a network (Doug Goldstein),<br/>
      build: define WITH_INTERFACE for the driver (Doug Goldstein),<br/>
      virsh: Rename QEmu to QEMU to match upstream (Doug Goldstein),<br/>
      bitmap: fix problems in previous commit (Eric Blake),<br/>
      build: avoid non-portable byte-swapping (Eric Blake),<br/>
      Fix minor details not only in apic eoi (Martin Kletzander),<br/>
      secret: Fix error for private secrets (Martin Kletzander),<br/>
      virNetDevBandwidthClear: Improve error handling (Martin Kletzander),<br/>
      syntax-check: fix run.in (Martin Kletzander),<br/>
      Add a ./run script for running programs from the local directory (Richard W.M. Jones),<br/>
      daemon: Fix error message when libvirtd is missing (Richard W.M. Jones),<br/>
      gitignore: Ignore .gdb_history file (Richard W.M. Jones),<br/>
      Fix the augea test for qemu libvirtd options (Daniel Veillard),<br/>
      network: implement backend of virNetworkUpdate(IP_DHCP_HOST) (Laine Stump),<br/>
      network: restart radvd/dnsmasq if needed when libvirtd is restarted (Laine Stump),<br/>
      network: implement virNetworkUpdate for test_driver (Laine Stump),<br/>
      network: implement virNetworkUpdate for bridge_driver (Laine Stump),<br/>
      network: reorganize dnsmasq and radvd config file / startup (Laine Stump),<br/>
      conf: implement NetworkObj backend of virNetworkUpdate API (Laine Stump),<br/>
      network: utility functions for updating network config (Laine Stump),<br/>
      network: implement RPC calls for virNetworkUpdate (Laine Stump),<br/>
      tests: add qemu-1.2.0 help data (Ján Tomko),<br/>
      qemu: add -sandbox to command line if requested (Ján Tomko),<br/>
      qemu: conf: add seccomp_sandbox option (Ján Tomko),<br/>
      qemu: add capability flag for seccomp sandbox (Ján Tomko),<br/>
      qemu: Use disk wwn in qemu command line (Osier Yang),<br/>
      qemu: Add caps to indentify if setting wwn is supported by qemu (Osier Yang),<br/>
      conf: Parse and format disk &lt;lt;wwn&gt; (Osier Yang),<br/>
      schema: Add schema for disk &lt;lt;wwn&gt; (Osier Yang),<br/>
      blockjob: add blockcommit support to rpc (Eric Blake),<br/>
      blockjob: add virsh blockcommit (Eric Blake),<br/>
      conf: separate functions to parse DHCPHostDef and DHCPRangeDef (Laine Stump),<br/>
      remove virDomainCpuSetFormat and virDomainCpuSetParse (Hu Tao),<br/>
      xen: eliminate remaining uses of virDomainCpuSetParse (Laine Stump),<br/>
      use virBitmap to store nodeinfo (Hu Tao),<br/>
      use virBitmap to store cells' cpumask info (Hu Tao),<br/>
      use virBitmap to store cpumask info (Hu Tao),<br/>
      use virBitmap to store numa nodemask info (Hu Tao),<br/>
      use virBitmap to store cpu affinity info (Hu Tao),<br/>
      use virBitmap to store cpupin info (Hu Tao),<br/>
      New functions for virBitmap (Hu Tao),<br/>
      bitmap: new member variable and function renaming (Hu Tao),<br/>
      Build: Fix typos which cause build failure (Osier Yang),<br/>
      node_memory: Expose the APIs to Python bindings (Osier Yang),<br/>
      node_memory: Expose the APIs to virsh (Osier Yang),<br/>
      node_memory: Support get/set memory parameters for drivers (Osier Yang),<br/>
      node_memory: Implement the internal APIs (Osier Yang),<br/>
      node_memory: Wire up the RPC protocol (Osier Yang),<br/>
      list: Use virConnectListAllSecrets in virsh (Osier Yang),<br/>
      list: Expose virConnectListAllSecrets to Python binding (Osier Yang),<br/>
      list: Implement listAllSecrets (Osier Yang),<br/>
      list: Implement RPC calls for virConnectListAllSecrets (Osier Yang),<br/>
      list: Use virConnectListAllNWFilters in virsh (Osier Yang),<br/>
      list: Expose virConnectListAllNWFilters to Python binding (Osier Yang),<br/>
      list: Implement listAllNWFilters (Osier Yang),<br/>
      list: Implement RPC calls for virConnectListAllNWFilters (Osier Yang),<br/>
      list: Use virConnectListAllNodeDevices in virsh (Osier Yang),<br/>
      virsh: Don't modify the const string (Osier Yang),<br/>
      list: Expose virConnectListAllNodeDevices to Python binding (Osier Yang),<br/>
      list: Implement listAllNodeDevices (Osier Yang),<br/>
      list: Add helpers for listing node devices (Osier Yang),<br/>
      list: Implement RPC calls for virConnectListAllNodeDevices (Osier Yang),<br/>
      Introduce a API for creating QEMU capabilities for a binary (Daniel P. Berrange),<br/>
      Remove upfront check for hmp - just try it cope with failure (Daniel P. Berrange),<br/>
      Don't overwrite errors raised by qemuMonitorHMPCommand (Daniel P. Berrange),<br/>
      qemu: Add support for EOI with APIC (Martin Kletzander),<br/>
      Add support for EOI with APIC (Martin Kletzander),<br/>
      Improve virTypedParameterValidateSet (Osier Yang),<br/>
      parallels: implement containers creation (Dmitry Guryanov),<br/>
      parallels: fix parallelsDomainDefineXML for existing containers (Dmitry Guryanov),<br/>
      parallels: handle unlimited cpus on containers (Dmitry Guryanov),<br/>
      Fix data types used for list sizes in QEMU capabilities (Daniel P. Berrange),<br/>
      Add API for copying instances of the qemuCapsPtr object (Daniel P. Berrange),<br/>
      Add ability to store other metadata in the qemu capabilities object (Daniel P. Berrange),<br/>
      Make qemuCapsProbeCommand static (Daniel P. Berrange),<br/>
      Turn QEMU capabilities object into a full virObjectPtr (Daniel P. Berrange),<br/>
      Allow caps to be NULL when creating virDomainObjPtr instances (Daniel P. Berrange),<br/>
      Add a virBitmapCopy API (Daniel P. Berrange),<br/>
      test: add xml2argvtest for usb-redir filter and update xml schema (Guannan Ren),<br/>
      qemu: build USB redirection filter qemu command line (Guannan Ren),<br/>
      qemu: define and parse USB redirection filter XML (Guannan Ren),<br/>
      virsh: Fix version numbers in comments (Osier Yang),<br/>
      qemu: add usb-redir.filter qemu capability flag (Guannan Ren),<br/>
      maint: fix missing spaces in message (Eric Blake),<br/>
      build: avoid confusing make with raw name 'undefine' (Eric Blake),<br/>
      Add API for opening a QEMU monitor from a socket FD (Daniel P. Berrange),<br/>
      list: Expose virConnectListAllInterfaces to Python binding (Osier Yang),<br/>
      list: Use virConnectListAllInterfaces in virsh (Osier Yang),<br/>
      list: Implement listAllInterfaces (Osier Yang),<br/>
      list: Implemente RPC calls for virConnectListAllInterfaces (Osier Yang),<br/>
      build: avoid dirty docs on fresh bootstrap (Eric Blake),<br/>
      Print any exception that occurs in authentication callback (Daniel P. Berrange),<br/>
      virsh: Fix the typos (Osier Yang),<br/>
      list: Expose virConnectListAllNetworks to Python binding (Osier Yang),<br/>
      list: Use virConnectListAllNetworks in virsh (Osier Yang),<br/>
      list: Implement listAllNetworks for test driver (Osier Yang),<br/>
      list: Implement listAllNetworks for network driver (Osier Yang),<br/>
      list: Add helpers to list network objects (Osier Yang),<br/>
      list: Implement RPC calls for virConnectListAllNetworks (Osier Yang),<br/>
      list: Expose virStoragePoolListAllVolumes to Python binding (Osier Yang),<br/>
      list: Use virStoragePoolListAllVolumes in virsh (Osier Yang),<br/>
      list: Implement virStoragePoolListAllVolumes for test driver (Osier Yang),<br/>
      list: Implement virStoragePoolListAllVolumes for storage driver (Osier Yang),<br/>
      list: Implement RPC calls for virStoragePoolListAllVolumes (Osier Yang),<br/>
      Introduce a test suite for the JSON monitor (Daniel P. Berrange),<br/>
      Add helper library for testing the qemu monitor code (Daniel P. Berrange),<br/>
      Add non-null annotations to qemuMonitorOpen (Daniel P. Berrange),<br/>
      Fix PMSuspend and PMWakeup events (Jiri Denemark),<br/>
      virsh: Update only changed scheduler tunables (Peter Krempa),<br/>
      util: Add helper to assign typed params from string (Peter Krempa),<br/>
      qemu: Add range checking for scheduler tunables when changed by API (Peter Krempa),<br/>
      qemu: clean up qemuSetSchedulerParametersFlags() (Peter Krempa),<br/>
      list: fix typo in virsh patch (Eric Blake),<br/>
      Remove duplicate symbols and add test case (Daniel P. Berrange),<br/>
      python: Expose virStorageListAllStoragePools to python binding (Osier Yang),<br/>
      list: Use virConnectListAllStoragePools in virsh (Osier Yang),<br/>
      list: Change MATCH for common use in virsh (Osier Yang),<br/>
      virsh: Fix the wrong doc for pool-list (Osier Yang),<br/>
      list: Add helper to convert strings separated by ',' to array (Osier Yang),<br/>
      list: Implement listAllStoragePools for test driver (Osier Yang),<br/>
      list: Implement listAllStoragePools for storage driver (Osier Yang),<br/>
      list: Implement the RPC calls for virConnectListAllStoragePools (Osier Yang),<br/>
      list: Add helpers for listing storage pool objects (Osier Yang),<br/>
      esx: Add implementation for virConnectListAllDomains() (Peter Krempa),<br/>
      hyperv: Add implementation for virConnectListAllDomains() (Peter Krempa),<br/>
      maint: avoid doubled name in syntax check failures (Eric Blake),<br/>
      Rename iolimit to blockio (Viktor Mihajlovski),<br/>
      tests: Add tests for qemu S3/S4 state configuration (Martin Kletzander),<br/>
      qemu: Add support for S3/S4 state configuration (Martin Kletzander),<br/>
      conf: Support for Block Device IO Limits (Viktor Mihajlovski),<br/>
      virsh: Improve checking for connection when running commands (Peter Krempa),<br/>
      util: Update the inconsistent and outdated comments (Osier Yang)<br/>
      </li>

      <li>Cleanups:<br/>
      Remove redundant lines in src/qemu/qemu_driver.c (Tang Chen),<br/>
      Remove a redundant line in src/qemu/qemu_driver.c (Tang Chen),<br/>
      maint: fix up copyright notice inconsistencies (Eric Blake),<br/>
      build: avoid unused symbol (Eric Blake),<br/>
      Adhere to copyright_address check (Guido Günther),<br/>
      qemuhelptest: convert runaway tab to spaces (Ján Tomko),<br/>
      qemu: drop unused arguments for dump-guest-memory (Eric Blake),<br/>
      Build: Fix typos which cause build failure (Osier Yang),<br/>
      esx: Remove unused variable from esxDomainGetAutostart (Matthias Bolte),<br/>
      build: avoid tabs that failed syntax-check (Eric Blake),<br/>
      virsh: remove unneeded usage of vshConnectionUsability() (Peter Krempa)<br/>
      </li>
    </ul>

    <h3>0.10.1: Aug 31 2012</h3>
    <ul>
      <li>Bug Fixes:<br/>
      conf: Avoid formatting auto-generated DAC labels (Marcelo Cerri),<br/>
      conf: Fix parsing of seclabels without model (Marcelo Cerri),<br/>
      virsh: fixed incorrect timing report (Viktor Mihajlovski),<br/>
      qemu: Don't ignore CPU tuning config if required cgroups are missing (Jiri Denemark),<br/>
      cgroup: fix libvirtd crash caused by messed memory (Guannan Ren),<br/>
      cgroup: fix a typo on extracting data from vcpu cgroup (Guannan Ren),<br/>
      cgroup: read more data from cgroup cpuacct.usage_percpu (Guannan Ren),<br/>
      nwfilter: adapt IP learning for broadcasted DHCP replies (Stefan Berger),<br/>
      nwfilter: accept broadcasted DHCP replies in DHCP snooping code (Stefan Berger),<br/>
      Fix adding ports to OVS bridges without VLAN tags (Kyle Mestery),<br/>
      Fix xen driver following changes to make it stateful (Jim Fehlig),<br/>
      Fix issue of PF brought down if VF is 8021.Qbh and pci passthrough (Nishank Trivedi),<br/>
      nwfilter: loop generated too many rules (Stefan Berger),<br/>
      security: Re-apply commit ce53382ba28179d3a504b29b4f888b6e130d53f0 (Peter Krempa),<br/>
      vcpupin: Fix returning of arrays from virDomainVcpuPinAdd (Peter Krempa),<br/>
      qemu: Fix possible infinite loop and segfault on error path. (Peter Krempa),<br/>
      qemu: Clean up security driver initialisation and config file (Peter Krempa),<br/>
      qemu: Revert to blocking behavior of qemuAgentCommand (Jiri Denemark),<br/>
      qemu: Remove redundant parameter from qemuAgentSend (Jiri Denemark),<br/>
      network: get vlan info for Open vSwitch interfaces from proper source (Laine Stump),<br/>
      Small cleanup on previous patch (Daniel Veillard),<br/>
      Fix a crash when using Open vSwitch virtual ports (Kyle Mestery),<br/>
      qemu: Sort the numa params only when it affects the live config (Osier Yang),<br/>
      Fix configuration of QEMU security drivers (Daniel P. Berrange),<br/>
      qemu: Refactor initialisation of security drivers. (Peter Krempa),<br/>
      Revert "security: Add DAC to security_drivers" (Peter Krempa),<br/>
      qemu: Fix starting domains with no cpu cgroup (Jiri Denemark)<br/>
      </li>

      <li>Documentation:<br/>
      virsh: Document subdriver option of attach-disk (Jiri Denemark),<br/>
      update option force to subcommand change-media (Guannan Ren),<br/>
      Fix typo in CPU tuning (Jiri Denemark),<br/>
      Fix emulator pinning example in formatdomain.html (Peter Krempa)<br/>
      </li>

      <li>Improvements:<br/>
      Implement virMacAddrIsBroadcastRaw (Stefan Berger)<br/>
      </li>

      <li>Cleanups:<br/>
      security: remove dead code from virSecurityDACGenLabel (Alex Jia)<br/>
      </li>
    </ul>

    <h3>0.10.0: Aug 29 2012</h3>
    <ul>
      <li>Features:<br/>
      agent: add qemuAgentArbitraryCommand() for general qemu agent command (MATSUDA Daiki),<br/>
      Introduce virDomainPinEmulator and virDomainGetEmulatorPinInfo functions. (Tang Chen),<br/>
      network: use firewalld instead of iptables, when available (Thomas Woerner),<br/>
      network: make network driver vlan-aware (Laine Stump),<br/>
      esx: Implement network driver (Matthias Bolte),<br/>
      driver for parallels hypervisor (Dmitry Guryanov),<br/>
      Various LXC improvements (Daniel P. Berrange),<br/>
      Add virDomainGetHostname (Guido Günther)<br/>
      </li>

      <li>Documentation:<br/>
      CPU allocation and pinning clarification (Martin Kletzander),<br/>
      libssh2_transport: Add docs to remote.html (Peter Krempa),<br/>
      Fix some typos in messages, docs and comments. (Yuri Chornoivan),<br/>
      fix blockpull/blockcopy bandwidth Mbps -&gt; MiB/s (Stefan Hajnoczi),<br/>
      qemu: modify 3 error messages (Martin Kletzander),<br/>
      Enhance documentation of log_filters (Jiri Denemark),<br/>
      Update libvirtd --help output to match code (Doug Goldstein),<br/>
      Update paths in man page to reflect libvirtd code (Doug Goldstein),<br/>
      Fix man page file paths to real paths (Doug Goldstein),<br/>
      Update documentation for CPU quota/period support for LXC (Sukadev Bhattiprolu),<br/>
      docs/virsh: various minor fixes (Martin Kletzander),<br/>
      autogenerate search.php (Martin Kletzander),<br/>
      fix 404 page when fetched from different location (Martin Kletzander),<br/>
      Add method to print warnings in docBuilder class (Peter Krempa),<br/>
      maint: avoid regression on copyright listings (Eric Blake),<br/>
      maint: Use consistent copyright. (Osier Yang),<br/>
      add more description on libvirtd option timeout (Guannan Ren),<br/>
      virsh man page - domain-id consistency (Jan Tomko),<br/>
      Fixup manpage names and copyright dates (Laine Stump),<br/>
      conf: Fix typo in virDomainHostdevSubsys comment (Jiri Denemark),<br/>
      maint: spelling correction in AUTHORS (Eric Blake),<br/>
      virsh: Clarify that memtune parameters may be rounded in the man page (Jan Tomko),<br/>
      Fix time keeping example for the guest clock (Doug Goldstein),<br/>
      Desert the FSF address in copyright (Osier Yang),<br/>
      Improve patch submission guidelines (Michal Privoznik),<br/>
      Clarify direct migration (Jiri Denemark),<br/>
      added description of the vendor_id attribute (Hendrik Schwartke),<br/>
      virsh: Clarify documentation for virsh dompmsuspend command (Peter Krempa)<br/>
      </li>

      <li>Portability:<br/>
      Don't require gawk for a simple print expression (Guido Günther),<br/>
      Portability fixes for non-linux or old linux platforms (Daniel Veillard),<br/>
      build: define 'inline' iff HAVE_LIBNL1 (Michal Privoznik),<br/>
      build: work with older libnl1 headers (Eric Blake),<br/>
      specfile: require libnl3 for Fedora &gt;= 18 and RHEL &gt;= 7 (Laine Stump),<br/>
      build: add LIBNL_CFLAGS to build of libvirt_lxc (Laine Stump),<br/>
      Fix a missing build requirement on dbus-devel (Daniel Veillard),<br/>
      Fix parameter list in virNetlinkEvent{Add,Remove}Client Win32 stubs (Daniel P. Berrange),<br/>
      build: avoid $(builddir) in Makefile (Eric Blake),<br/>
      build: network requires location of dbus headers (Eric Blake),<br/>
      atomic: mark header functions static (Eric Blake),<br/>
      build: work with glibc that lacks CPU_COUNT (Eric Blake),<br/>
      build: work with older RHEL 5 kernel (Eric Blake),<br/>
      build: silence stupid gcc warning on STREQ_NULLABLE (Eric Blake),<br/>
      Fix parsing of uid/gid on Mingw32 (Daniel P. Berrange),<br/>
      build: fix build with autoconf 2.59 (Eric Blake),<br/>
      Fix build of virsh on Win32 by moving SA_SIGINFO stub (Daniel P. Berrange),<br/>
      Make Win32 stub of vshAskReedit non-static (Daniel P. Berrange),<br/>
      Fix WIN32 conditional for disabling console command (Daniel P. Berrange),<br/>
      build: avoid warnings on older gcc (Eric Blake),<br/>
      Fix virJSONValueToString prototype for Mingw32 (Daniel P. Berrange),<br/>
      random: link with -lm when needed (Eric Blake),<br/>
      build: fix link error with appArmor (Eric Blake),<br/>
      virsh.c: Fix compiler warning (Cole Robinson),<br/>
      Avoid clash of base64 symbols (Daniel P. Berrange),<br/>
      build: fix build without HAVE_CAPNG (Eric Blake),<br/>
      Fix libnl CFLAGS/LIBS inclusion (Doug Goldstein),<br/>
      build: fix compilation without struct ifreq (Eric Blake),<br/>
      configure: rbd doesn't need -lcrypto (Cole Robinson),<br/>
      build: fix typo that breaks non-Linux builds (Eric Blake)<br/>
      </li>

      <li>Bug Fixes:<br/>
      nwfilter: Don't try to acquire DBus context when DBus is disabled (Peter Krempa),<br/>
      util: Prevent libvirtd crash (Alex Jia),<br/>
      security_dac: Don't return uninitialised uid and gid for image labels (Peter Krempa),<br/>
      security_dac: Don't return uninitialised value when parsing seclabels (Peter Krempa),<br/>
      security_dac: Avoid segfault when no label is requested (Peter Krempa),<br/>
      util: Fix error message when getpwuid_r fails to find the user (Peter Krempa),<br/>
      conf: Fix the problem which cause libvirtd to crash (Osier Yang),<br/>
      qemu: Fix define logic (Michal Privoznik),<br/>
      qemu_agent: Switch to virReportSystemError() on system error (Michal Privoznik),<br/>
      conf: prevent NULL pointer access in virSecurityLabelDefsParseXML (Ján Tomko),<br/>
      rpc: fix segmentation fault caused by null client-sock (Guannan Ren),<br/>
      qemu: fix regression with spice tls port allocation (Martin Kletzander),<br/>
      qemu: fix regression with pinning (Martin Kletzander),<br/>
      virsh: fix missing return value (Alex Jia),<br/>
      xen-xs: fix uuid of renamed domain (Philipp Hahn),<br/>
      openvz: check the exitstatus of vzlist (Laine Stump),<br/>
      network: fix virtual network bridge delay setting (Laine Stump),<br/>
      qemu: forbid suspend if already pmsuspended (Michal Privoznik),<br/>
      fix check of vcpuid in virDomainVcpuPinDefParseXML (Hu Tao),<br/>
      util: eliminate erroneous VIR_WARNs in (eb|ip)tables.c (Laine Stump),<br/>
      dnsmasq: avoid forwarding queries without a domain (Gene Czarcinski),<br/>
      virsh: don't print error info when snapshot xml is not changed (Guannan Ren),<br/>
      Fix typo in Makefile.am  s/LDFOAGS/LDFLAGS/ (Daniel P. Berrange),<br/>
      client: Change default location of known_hosts file for libssh2 layer (Peter Krempa),<br/>
      command: avoid double close in virExecWithHook (Ján Tomko),<br/>
      Fix regression generating image context (Daniel P. Berrange),<br/>
      selinux: Fix incorrect object label generation. (Viktor Mihajlovski),<br/>
      conf: log error when encountering multiple filterrefs in interface (Laine Stump),<br/>
      openvz: unlock virDomainObj objects in openvzOpen (Dmitry Guryanov),<br/>
      util: typos in fallback code fo virDoubleToStr (Martin Kletzander),<br/>
      Fix timebomb in LIBVIRT_VERSION_INFO calculation (Daniel P. Berrange),<br/>
      json: fix interface locale dependency (Martin Kletzander),<br/>
      virsh: say save-image-edit failed only when it does (Ján Tomko),<br/>
      sanlock: don't unlink lockspace if registration fails (Asad Saeed),<br/>
      build: Distribute check-symfile.pl (Cole Robinson),<br/>
      Release only specific sanlock resource (Frido Roose),<br/>
      build: fix binary location in stap files --with-driver-modules (Laine Stump),<br/>
      nwfilter: fix crash during filter define when lxc driver failed startup (Laine Stump),<br/>
      nwfilter: remove target table before renaming it (Stefan Berger),<br/>
      qemu: Fix debug message in p2p migration (Jiri Denemark),<br/>
      Fix errno check, prevent spurious errors under heavy load (Peter Feiner),<br/>
      rpc: fix a virObject typo error in struct _virNetServer (Guannan Ren),<br/>
      Set LIBVIRT_AUTOSTART=0 when running test suites (Daniel P. Berrange),<br/>
      qemu: Set reasonable RSS limit on domain startup (Michal Privoznik),<br/>
      conf: Remove console stream callback only when freeing console helper (Peter Krempa),<br/>
      client: Free message when freeing client (Peter Krempa),<br/>
      build: fix "make rpm" (Laine Stump),<br/>
      Fix typo s/AM_CLFAGS/AM_CFLAGS/ in sanlock link (Daniel P. Berrange),<br/>
      virsh: console: Avoid using stream after being freed. (Peter Krempa),<br/>
      remote: Fill snapshot argument in remoteDomainSnapshotListAllChildren (Peter Krempa),<br/>
      qemu: Fix typo in qemuDomainModifyDeviceFlags (Michal Privoznik),<br/>
      build: commit to 0.10.0 release naming (Eric Blake),<br/>
      build: Link security driver into daemon (Jiri Denemark),<br/>
      Fix rpm build failures (Daniel Veillard),<br/>
      Add missing parallels_utils.h to Makefile.am (Daniel Veillard),<br/>
      qemu: syntax fix (Marc-André Lureau),<br/>
      qemu: fix use after free (Eric Blake),<br/>
      build: distribute virsh related source files (Guannan Ren),<br/>
      daemon: Fix crash in virTypedParameterArrayClear (Jiri Denemark),<br/>
      conf: Remove callback from stream when freeing entries in console hash (Peter Krempa),<br/>
      Process all pending I/O for a RPC client before checking EOF (Daniel P. Berrange),<br/>
      libvirt-guests: systemd host shutdown does not work (Gerd v. Egidy),<br/>
      virsh: Fix error resetting on fallback paths (Peter Krempa),<br/>
      virsh: Check for existence of storage before undefining the domain (Peter Krempa),<br/>
      util: Fix typoes on return value and comments (Guannan Ren),<br/>
      fixed SegFault in virauth (Martin Kletzander),<br/>
      virsh: fixed domdisplay command (Martin Kletzander),<br/>
      building: fix deps error when some drivers are not built (Wen Congyang),<br/>
      ESX: Fix ESX_VI__TEMPLATE__DYNAMIC_DEEP_COPY (Ata E Husain Bohra),<br/>
      tests: avoid seclabeltest crash (Eric Blake),<br/>
      Only enforce check for YAJL when starting a VM (Daniel P. Berrange),<br/>
      Make the 'lxc_driver' global variable non-static (Gao feng),<br/>
      Reset the 'quit' flag in virNetServerRun (Daniel P. Berrange),<br/>
      Don't autostart domains when reloading config (Daniel P. Berrange),<br/>
      esx: Fix esxVI_String_Deserialize (Matthias Bolte),<br/>
      nodeinfo: deal with offline cpus in a node (Eric Blake),<br/>
      lxcContainerMountCGroups also mounts a tmpfs that needs to be labeled. (Dan Walsh),<br/>
      remote: Fix locking in stream APIs (Jiri Denemark),<br/>
      qemu: Do not fail virConnectCompareCPU if host CPU is not known (Jiri Denemark),<br/>
      qemu: Fix probing for guest capabilities (Jiri Denemark),<br/>
      fix failure when building with --disable-debug (Hu Tao),<br/>
      virsh: remove unnecessary sleep for nodecpustats --percent (Viktor Mihajlovski),<br/>
      Fix daemon auto-spawning (Christophe Fergeau),<br/>
      Fix directory removal in filesystem storage driver (Sascha Peilicke),<br/>
      storage: Default pool permission mode to 0755 (Osier Yang),<br/>
      Fix shutdown of LXC controller (Daniel P. Berrange),<br/>
      openvz: Handle domain obj hash map errors (Guido Günther),<br/>
      Fix /domain/features setting in qemuParseCommandLine (Christophe Fergeau),<br/>
      systemd: start libvirtd after network (Jim Fehlig),<br/>
      util: Use current uid and gid if they are passed as -1 for virDirCreate (Osier Yang),<br/>
      virsh: Ensure the parents of the readline history path exists (Osier Yang),<br/>
      Fix a string format bug in qemu_cgroup.c (tangchen),<br/>
      storage_backend_fs: Allocate entry for host before accessing it (Peter Krempa),<br/>
      storage_backend_fs: Don't free a part of a structure on error (Peter Krempa),<br/>
      Only ummount /proc, /sys, /dev if the root source is '/' (Daniel P. Berrange),<br/>
      Fix one test regression on auth Ceph support (Daniel Veillard),<br/>
      Avoid build shared source files again for libvirt_lxc (Daniel P. Berrange),<br/>
      qemu: Always set auth_supported for Ceph disks. (Wido den Hollander),<br/>
      virsh: Fix ordering of arguments when calling vshCalloc. (Peter Krempa),<br/>
      remote: Fill remote parameters in remoteDomainListAllSnapshots() (Peter Krempa),<br/>
      qemu: Mark domains as having managed state image only on managed save (Peter Krempa),<br/>
      fix key error for qemuMonitorGetBlockStatsInfo (lvroyce)<br/>
      </li>

      <li>Improvements:<br/>
      Introduce new VIR_ERR_AGENT_UNRESPONSIVE error code (Michal Privoznik),<br/>
      qemu: Switch to unified func name (Michal Privoznik),<br/>
      snapshot: rename an enum (Eric Blake),<br/>
      snapshot: split snapshot conf code into own file (Eric Blake),<br/>
      snapshot: make virDomainSnapshotObjList opaque (Eric Blake),<br/>
      conf: Don't always require security/@model (Michal Privoznik),<br/>
      security: Add DAC to security_drivers (Michal Privoznik),<br/>
      nwfilter: don't log error if firewalld is disabled, improve diagnostics (Laine Stump),<br/>
      qemu-agent: available in 0.10.0 (Eric Blake),<br/>
      agent: add qemu-agent-command to virsh (MATSUDA Daiki),<br/>
      agent: add python module support (MATSUDA Daiki),<br/>
      agent: add remote driver support (MATSUDA Daiki),<br/>
      agent: add qemu driver support (MATSUDA Daiki),<br/>
      agent: add virDrvDomainQemuAgentCommand prototype for drivers. (MATSUDA Daiki),<br/>
      agent : add @seconds variable to qemuAgentSend(). (MATSUDA Daiki),<br/>
      Add uevent netlink service. (Tang Chen),<br/>
      Introduce virNetlinkEventServiceStopAll() to stop all netlink services. (Tang Chen),<br/>
      Improve netlink to support all protocol. (Tang Chen),<br/>
      libssh2_session: Add support for creating known_hosts file (Peter Krempa),<br/>
      qemu: support of emulator_period and emulator_quota's modification (Wen Congyang),<br/>
      new interface to control emulator_period/emulator_quota (Hu Tao),<br/>
      qemu: introduce period/quota tuning for emulator (Hu Tao),<br/>
      limit cpu bandwidth only for vcpus (Hu Tao),<br/>
      new command emulatorpin (Hu Tao),<br/>
      Add a new function vshPrintPinInfo. (Hu Tao),<br/>
      remote: introduce emulator pinning RPCs (Tang Chen),<br/>
      qemu: support emulator pinning (Hu Tao),<br/>
      Introduce virDomainEmulatorPinAdd and virDomainEmulatorPinDel functions (Tang Chen),<br/>
      Add qemuProcessSetEmulatorAffinites and set emulator threads affinities (Tang Chen),<br/>
      qemu: synchronize emulatorpin info to cgroup (Tang Chen),<br/>
      Support emulatorpin xml parse. (Tang Chen),<br/>
      Change virDomainVcpuPinDefParseXML to support parsing emulatorpin (Hu Tao),<br/>
      Enable cpuset cgroup and synchronous vcpupin info to cgroup. (Hu Tao),<br/>
      updates of some vcpupin related functions (Hu Tao),<br/>
      refactor virDomainVcpuPinAdd() (Hu Tao),<br/>
      add function bitmapFromBytemap() to convert bytemap to bitmap (Hu Tao),<br/>
      create a new cgroup and move all emulator threads to the new cgroup (Wen Congyang),<br/>
      Introduce the function virCgroupMoveTask (Hu Tao),<br/>
      Introduce the function virCgroupForEmulator (Wen Congyang),<br/>
      output status information during guest shutdown again (Gerd v. Egidy),<br/>
      qemu: Disk Geometry Override Support (J.B. Joret),<br/>
      Support for Disk Geometry Override (J.B. Joret),<br/>
      nwfilter: provide basic support for firewalld (Stefan Berger),<br/>
      sanlock: Provide better error if lockspace directory is missing (Jiri Denemark),<br/>
      daemon: Autodetect lock driver directory (Jiri Denemark),<br/>
      build: split driver_storage into convenience library (Eric Blake),<br/>
      libssh2_transport: Use libssh2 driver code in remote driver (Peter Krempa),<br/>
      libssh2_transport: Add libssh2 session support to net client code (Peter Krempa),<br/>
      libssh2_transport: add ssh context support to virNetSocket (Peter Krempa),<br/>
      libssh2_transport: add main libssh2 transport implementation (Peter Krempa),<br/>
      Add test case for SELinux label generation (Daniel P. Berrange),<br/>
      Honour current sensitivity and category ranges in SELinux label generation (Daniel P. Berrange),<br/>
      qemu: configurable remote display port boundaries (Martin Kletzander),<br/>
      qemu: Unify port-wise SPICE and VNC behavior (Martin Kletzander),<br/>
      virsh: split out virsh-volume.c (Eric Blake),<br/>
      virsh: split out virsh-snapshot.c (Eric Blake),<br/>
      virsh: split out virsh-secret.c (Eric Blake),<br/>
      virsh: split out virsh-pool.c (Eric Blake),<br/>
      virsh: split out virsh-nwfilter.c (Eric Blake),<br/>
      virsh: split out virsh-nodedev.c (Eric Blake),<br/>
      virsh: split out virsh-network.c (Eric Blake),<br/>
      virsh: split out virsh-interface.c (Eric Blake),<br/>
      virsh: declare more common functions (Eric Blake),<br/>
      virsh: split out virsh-host.c (Eric Blake),<br/>
      virsh: split out virsh-domain-monitor.c (Eric Blake),<br/>
      Update the remote API (Marcelo Cerri),<br/>
      Support for multiple default security drivers in QEMU config (Marcelo Cerri),<br/>
      Update security layer to handle many security labels (Marcelo Cerri),<br/>
      Multiple security drivers in XML data (Marcelo Cerri),<br/>
      Internal refactory of data structures (Marcelo Cerri),<br/>
      virsh: use common namespacing (Eric Blake),<br/>
      Add support for creating sockets &amp; RPC servers from a pre-opened fd (Daniel P. Berrange),<br/>
      Refactor impl of the virNetServerClientNew method (Daniel P. Berrange),<br/>
      Refactor the way new clients are registered with the server (Daniel P. Berrange),<br/>
      virsh: split out virsh-domain.c (Eric Blake),<br/>
      virsh: split out virsh.h (Eric Blake),<br/>
      virsh: move vshWatchJob earlier (Eric Blake),<br/>
      qemu: support netdevs from &lt;forward mode='hostdev'&gt; networks (Shradha Shah),<br/>
      network: support &lt;forward mode='hostdev'&gt; in network driver (Shradha Shah),<br/>
      conf: add function virDevicePCIAddressEqual (Shradha Shah),<br/>
      network: return netdev name or pci addr of the VF in actualDevice (Shradha Shah),<br/>
      conf: parser/formatter/rng for &lt;forward mode='hostdev'&gt; (Shradha Shah),<br/>
      network: helper function to create interface pool from PF (Shradha Shah),<br/>
      conf: move DevicePCIAddress functions to separate file (Shradha Shah),<br/>
      conf: Fix ABI stability check for spicevmc channel (Jiri Denemark),<br/>
      network: add support for setting VLANs on Open vSwitch ports (Kyle Mestery),<br/>
      qemu: Set swap_hard_limit before hard_limit (Osier Yang),<br/>
      build: ship stamp files (Eric Blake),<br/>
      qemu: support setting vlan tag for &lt;interface type='hostdev'&gt; (Laine Stump),<br/>
      util: properly save/restore original vlan tag for VFs (Laine Stump),<br/>
      qemu: Ensure the cpuset is formatted as expected before passing to cgroup (Osier Yang),<br/>
      conf: add &lt;vlan&gt; element to network and domain interface elements (Laine Stump),<br/>
      util: add virNetDevVlanType (Laine Stump),<br/>
      schema: fix some problems in network/interface schemas (Laine Stump),<br/>
      util: include memory.h even if WITH_VIRTUALPORT isn't defined (Laine Stump),<br/>
      Replace unset REMOTE_PID_FILE with proper value (Doug Goldstein),<br/>
      Refactor RPC client private data setup (Daniel P. Berrange),<br/>
      Add further debugging lines to domain lock manager (Daniel P. Berrange),<br/>
      Allow sync IO and keepalives to be skipped in RPC client setup (Daniel P. Berrange),<br/>
      Change interaction when accepting new RPC client connections (Daniel P. Berrange),<br/>
      Add APIs for virThreadPoolPtr to query some config params (Daniel P. Berrange),<br/>
      Allow control over JSON string pretty printing (Daniel P. Berrange),<br/>
      Change function signature for creating new lock manager instances (Daniel P. Berrange),<br/>
      parallels: add domain configuration example (Dmitry Guryanov),<br/>
      parallels: cleanup parallelsOpen and fix error message (Dmitry Guryanov),<br/>
      parallels: change URI to parallels:///system (Dmitry Guryanov),<br/>
      virsh: Add helper to avoid the strcase check for virsh-*.c (Osier Yang),<br/>
      network: add connections counter to networks (Laine Stump),<br/>
      network: change cleanup: to success/cleanup/error: in network*() functions (Laine Stump),<br/>
      conf: output forward device connections count in network XML (Laine Stump),<br/>
      conf: rename interface "usageCount" to "connections" (Laine Stump),<br/>
      conf: use a unique data type for PF array in virDomainNetDef (Laine Stump),<br/>
      network: merge relevant virtualports rather than choosing one (Laine Stump),<br/>
      conf: support partially-specified &lt;virtualport&gt; in parser and formatter (Laine Stump),<br/>
      conf: simplify Buffer Indentation in virDomainNetDefFormat (Laine Stump),<br/>
      conf: make error returns from virDomainActualNetDefFormat consistent (Laine Stump),<br/>
      conf: move virtPortProfile out of unions in virDomainNetDef (Laine Stump),<br/>
      util: utility functions for virNetDevVPortProfile (Laine Stump),<br/>
      util: add openvswitch case to virNetDevVPortProfileEqual (Laine Stump),<br/>
      util: eliminate union in virNetDevVPortProfile (Laine Stump),<br/>
      util: make return value of virUUIDFormat and virMacAddrFormat useful (Laine Stump),<br/>
      Pull code which finds a free MCS label out into its own method (Daniel P. Berrange),<br/>
      Honour current user and role in SELinux label generation (Daniel P. Berrange),<br/>
      Fix error reporting in virSecuritySELinuxGenNewContext (Daniel P. Berrange),<br/>
      Use VIR_ERR_CONFIG_UNSUPPORTED if requested security driver is disabled (Daniel P. Berrange),<br/>
      Add missing domain_conf.h include in security_manager.h (Daniel P. Berrange),<br/>
      Add virRandom() API to generate numbers with non-power-of-2 limit (Daniel P. Berrange),<br/>
      virsh: make 'help' command ignore spurious options (Cole Robinson),<br/>
      virsh: Convert '&lt;cmd&gt; --help' to 'help &lt;cmd&gt;' (Cole Robinson),<br/>
      virterror: Add error message for unsupported operations. (Peter Krempa),<br/>
      build: fix PROBE() usage of intptr_t (Eric Blake),<br/>
      esx: Remove redundant checks for esxVI_LookupHostSystemProperties result (Matthias Bolte),<br/>
      esx: Fix dynamic deep copy (Matthias Bolte),<br/>
      esx: Implement interface driver (Matthias Bolte),<br/>
      Add APIs for obtaining the unique ID of LVM &amp; SCSI volumes (Daniel P. Berrange),<br/>
      examples: Update strings for event details (Jiri Denemark),<br/>
      qemu: Migrate at unlimited speed by default (Jiri Denemark),<br/>
      qemu: Refactor parsing of block device IO tuning parameters. (Peter Krempa),<br/>
      remote: Clean up coding style and refactor remote connection opening (Peter Krempa),<br/>
      Allow rbd backing stores (Peter Feiner),<br/>
      qemu: add two qemu caps for lsi and virtio-scsi SCSI controllers (Guannan Ren),<br/>
      qemu: add capabilities flags related to scsi controller (Guannan Ren),<br/>
      util: include stderr in log message when an external command fails (Laine Stump),<br/>
      Turn virNetClient* into virObject instances (Daniel P. Berrange),<br/>
      Turn virNetServer* into virObject instances (Daniel P. Berrange),<br/>
      Turn virSocket into a virObject (Daniel P. Berrange),<br/>
      Turn virKeepAlive into a virObject (Daniel P. Berrange),<br/>
      Turn virNetSASLContext and virNetSASLSession into virObject instances (Daniel P. Berrange),<br/>
      Turn virNetTLSContext and virNetTLSSession into virObject instances (Daniel P. Berrange),<br/>
      Turn qemuAgentPtr and qemuMonitorPtr into virObjectPtr instances (Daniel P. Berrange),<br/>
      Turn virDomainObjPtr into a virObjectPtr (Daniel P. Berrange),<br/>
      Convert public datatypes to inherit from virObject (Daniel P. Berrange),<br/>
      Add a generic reference counted virObject type (Daniel P. Berrange),<br/>
      apparmor: QEMU bridge helper policy updates (Richa Marwaha),<br/>
      Add -netdev bridge support (Richa Marwaha),<br/>
      Add -netdev bridge capabilities (Richa Marwaha),<br/>
      virrandom: make virRandomInitialize an automatic one-shot (Eric Blake),<br/>
      virsh: Use vshPrint instead of printf (Osier Yang),<br/>
      xen-xm: Generate UUID if not specified (Jim Fehlig),<br/>
      ESX: Add "Byte" datatype (Ata E Husain Bohra),<br/>
      parallels: translate error message (Eric Blake),<br/>
      Export virUUIDIsValid to libvirt internal code (Daniel P. Berrange),<br/>
      qemu: Allow to attach/detach controller device persistently (Osier Yang),<br/>
      Added timestamps to storage volumes (Hendrik Schwartke),<br/>
      Update xml schemas according to libvirt source (Ján Tomko),<br/>
      build: add stubs so mdns code can be unconditionally compiled (Eric Blake),<br/>
      virsh: Switch to close callback (Michal Privoznik),<br/>
      daemon: Portable auto-detection of driver module directory (Jiri Denemark),<br/>
      build: Rename security manager library (Jiri Denemark),<br/>
      build: Link security manager into libvirt.so (Jiri Denemark),<br/>
      Rewrite virAtomic APIs using GLib's atomic ops code (Daniel P. Berrange),<br/>
      Remove manual one-shot global initializers (Daniel P. Berrange),<br/>
      qemu: Add support for "none" USB controller (Peter Krempa),<br/>
      domain_conf: Add helpers to verify if device configuration is valid (Peter Krempa),<br/>
      domain_conf: Add USB controler model "none" (Peter Krempa),<br/>
      storage: netfs and iscsi need option srcSpec for resource discovery (Guannan Ren),<br/>
      maint: consolidate AUTHOR listings for Gerd von Egidy (Gerd v. Egidy),<br/>
      parallels: implement VM creation (Dmitry Guryanov),<br/>
      parallels: add storage driver (Dmitry Guryanov),<br/>
      parallels: implement virDomainDefineXML operation for existing domains (Dmitry Guryanov),<br/>
      parallels: add support of VNC remote display (Dmitry Guryanov),<br/>
      parallels: get info about serial ports (Dmitry Guryanov),<br/>
      parallels: implement functions for domain life cycle management (Dmitry Guryanov),<br/>
      parallels: add functions to list domains and get info (Dmitry Guryanov),<br/>
      add function virCommandNewVAList (Dmitry Guryanov),<br/>
      parallels: add driver skeleton (Dmitry Guryanov),<br/>
      Only perform symbol check against libvirt.so (Daniel P. Berrange),<br/>
      Don't link nwfilter or secrets driver to libvirt.so (Daniel P. Berrange),<br/>
      Remove bogus libvirt_network.syms file (Daniel P. Berrange),<br/>
      build: Don't export xenLinuxDomainBlockStats symbol (Jiri Denemark),<br/>
      Improve error message in LXC startup with network is not active (Daniel P. Berrange),<br/>
      Remove tabs from all perl files &amp; enforce this (Daniel P. Berrange),<br/>
      Add handling for reboots of LXC containers (Daniel P. Berrange),<br/>
      Allow CAP_SYS_REBOOT on new enough kernels (Daniel P. Berrange),<br/>
      Run an RPC protocol over the LXC controller monitor (Daniel P. Berrange),<br/>
      Make RPC code generator a little more flexible (Daniel P. Berrange),<br/>
      Move LXC monitor code out into separate file (Daniel P. Berrange),<br/>
      Convert the LXC driver to use virNetClient (Daniel P. Berrange),<br/>
      Replace use of lxcError with virReportError (Daniel P. Berrange),<br/>
      Rename lxc_driver_t to virLXCDriver (Daniel P. Berrange),<br/>
      Rename all APIs in lxc_domain.c to have a virLXCDomain prefix (Daniel P. Berrange),<br/>
      Rename all APIs in lxc_process.c to have a virLXCProcess prefix (Daniel P. Berrange),<br/>
      Extend events demo to show close callbacks in use (Daniel P. Berrange),<br/>
      Update remote driver to support the connection close callbacks (Daniel P. Berrange),<br/>
      Add callback to virNetClient to be invoked on connection close (Daniel P. Berrange),<br/>
      Ensure client is marked for close in all error paths (Daniel P. Berrange),<br/>
      Add public API to register a callback to be invoked on connection close (Daniel P. Berrange),<br/>
      esx: Improve error reporting for unknown VI types (Matthias Bolte),<br/>
      security: Skip labeling resources when seclabel defaults to none (Jiri Denemark),<br/>
      lib: Revert removing of Summary and Description fields in headers (Peter Krempa),<br/>
      Add a test case that checks there are no bogus entries in .syms (Daniel P. Berrange),<br/>
      virsh: Refactor error clearing on graceful fallback paths (Peter Krempa),<br/>
      maint: don't permit format strings without % (Eric Blake),<br/>
      maint: avoid empty regex in syntax checker (Eric Blake),<br/>
      virsh: check if specified debug level is in range (Ján Tomko),<br/>
      build: update to latest gnulib, for secure tarball (Eric Blake),<br/>
      util: set minimum value of nodesuspend duration to 60 seconds (Guannan Ren),<br/>
      virsh: Move command group definition into its own file (Osier Yang),<br/>
      virsh: Split cmds in node device group from virsh.c (Osier Yang),<br/>
      virsh: Split cmds in host group from virsh.c (Osier Yang),<br/>
      virsh: Split cmds to manage domain snapshot from virsh.c (Osier Yang),<br/>
      virsh: Split cmds to manage secret from virsh.c (Osier Yang),<br/>
      virsh: Split cmds to manage network filter from virsh.c (Osier Yang),<br/>
      virsh: Split cmds to manage host interface from virsh.c (Osier Yang),<br/>
      virsh: Split cmds to manage network from virsh.c (Osier Yang),<br/>
      virsh: Split cmds of storage pool group from virsh.c (Osier Yang),<br/>
      virsh: Split cmds of storage volume group from virsh.c (Osier Yang),<br/>
      virsh: Split cmds of domain group from virsh.c (Osier Yang),<br/>
      virsh: Split cmds for domain monitoring from virsh.c (Osier Yang),<br/>
      virsh: Move definition of cmds and cmd groups right at the top of main (Osier Yang),<br/>
      daemon: Fix the wrong macro name (Osier Yang),<br/>
      More advanced auto-detection of driver module directory (Daniel P. Berrange),<br/>
      adding handling EINTR to poll to make it more robust (Royce Lv),<br/>
      build: regenerate .png files (Eric Blake),<br/>
      Make ESX &amp; Hyper-V code generator safe with parallel builds (Daniel P. Berrange),<br/>
      tests: Add support for catching domain XML parsing errors (Peter Krempa),<br/>
      maint: Clean up coding style and fix error message spelling (Peter Krempa),<br/>
      Fix test failure when no IPv6 is avail (Doug Goldstein),<br/>
      vmx: handle shared folders parsing (Jean-Baptiste Rouault),<br/>
      vmx: handle shared folders formatting (Jean-Baptiste Rouault),<br/>
      openvz: Implement domainGetHostname (Guido Günther),<br/>
      openvz: Add openvzVEGetStringParam (Guido Günther),<br/>
      remote: Provide RPC call for domainGetHostname (Guido Günther),<br/>
      virsh: Add domhostname (Guido Günther),<br/>
      Report 'errno' in int1 field of virErrorPtr (Daniel P. Berrange),<br/>
      Use a hash table for storing MCS labels (Daniel P. Berrange),<br/>
      Fix error handling when adding MCS labels (Daniel P. Berrange),<br/>
      Use standard naming prefix for SELinux driver function names (Daniel P. Berrange),<br/>
      Disable NWFilter driver completely when unprivileged (Daniel P. Berrange),<br/>
      Replace use of custom macros with virReportError in the Xen drivers (Daniel P. Berrange),<br/>
      Make sure xenHypervisorInit correctly reports errors (Daniel P. Berrange),<br/>
      Ensure failure to talk to Xen hypervisor is fatal when privileged (Daniel P. Berrange),<br/>
      Using virOnce for global initialization (Daniel P. Berrange),<br/>
      Replace use of VMX_ERROR with virReportError (Daniel P. Berrange),<br/>
      Replace use of virNetError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virConfError with virReportError (Daniel P. Berrange),<br/>
      Replace use of nodeReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virSecurityReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of PHYP_ERROR with virReportError (Daniel P. Berrange),<br/>
      Replace use of HYPERV_ERROR with virReportError (Daniel P. Berrange),<br/>
      Replace use of ESX_ERROR &amp; ESX_VI_ERROR with virReportError (Daniel P. Berrange),<br/>
      Replace use of virLockError with virReportError (Daniel P. Berrange),<br/>
      Replace use of libxlError with virReportError (Daniel P. Berrange),<br/>
      Add missing "%s" format string to constant error messages in lock manager (Jiri Denemark),<br/>
      Add missing "%s" format string to constant error messages in libxl driver (Jiri Denemark),<br/>
      Replace use of streamsReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of remoteError with virReportError (Daniel P. Berrange),<br/>
      Replace use of XENXS_ERROR with virReportError (Daniel P. Berrange),<br/>
      Replace use of openvzError with virReportError (Daniel P. Berrange),<br/>
      Fix Xen driver to have sensible error messages (Daniel P. Berrange),<br/>
      Move LXC process management code into separate file (Daniel P. Berrange),<br/>
      Move cgroup setup code out of lxc_controller.c (Daniel P. Berrange),<br/>
      Move LXC domain private data into separate file (Daniel P. Berrange),<br/>
      Replace use of vmwareError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virCPUReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of testError with virReportError (Daniel P. Berrange),<br/>
      Replace use of vboxError with virReportError (Daniel P. Berrange),<br/>
      Replace use of xenapiError with virReportError (Daniel P. Berrange),<br/>
      Replace use of qemuReportError with virReportError (Daniel P. Berrange),<br/>
      qemu: Add missing "%s" before translation macros (Peter Krempa),<br/>
      Replace use of umlReportError with virReportError (Daniel P. Berrange),<br/>
      Add lots of internal symbols to libvirt_private.syms (Daniel P. Berrange),<br/>
      If in delay close mode for an RPC client, don't read further data (Daniel P. Berrange),<br/>
      Add missing deps on driver modules in libvirt RPM (Daniel P. Berrange),<br/>
      Replace use of networkReportError with virReportError (Daniel P. Berrange),<br/>
      maint: add mailmap entry for Dan Walsh (Eric Blake),<br/>
      esx: Extend esxVI_CURL_Download for partial downloads (Matthias Bolte),<br/>
      Replace use of interfaceReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virNWFilterReportError with virReportError (Daniel P. Berrange)i Add missing "%s" with constant string error message in nwfilter_dhcpsnoop.c (Daniel P. Berrange),<br/>
      Add a sheepdog backend for the storage driver (Sebastian Wiedenroth),<br/>
      Mount all tmpfs filesystems with correct SELinux label (Daniel J Walsh),<br/>
      Replace use of virNodeDeviceReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virSecretReportError with virReportError (Daniel P. Berrange),<br/>
      Replace use of virStorageReportError with virReportError (Daniel P. Berrange),<br/>
      Add missing "%s" format to const error message in RBD storage driver (Daniel P. Berrange),<br/>
      Convert all files in src/conf/ to use virReportError() (Daniel P. Berrange),<br/>
      Add missing _(...) around 2 error messages in test driver (Daniel P. Berrange),<br/>
      Fix parameter passed with VIR_ERR_INVALID_ARG in sanlock driver (Daniel P. Berrange),<br/>
      Convert all files in src/rpc/ to use virReportError() (Daniel P. Berrange),<br/>
      Convert (nearly) all files in src/util/ to use virReportError() (Daniel P. Berrange),<br/>
      Fix bogus cast to (int) in virNetServerMDNSTimeoutNew (Daniel P. Berrange),<br/>
      Add missing "%s" with constant string error message in stats_linux.c (Daniel P. Berrange),<br/>
      Remove newline from end of error message in virnodesuspend.c (Daniel P. Berrange),<br/>
      Add _(...) around two error messages in src/util/ (Daniel P. Berrange),<br/>
      Introduce virReportError macro for general error reporting (Daniel P. Berrange),<br/>
      xenapi: Convert to virMacAddr (Jiri Denemark),<br/>
      nwfilter: Convert to virMacAddrPtr not virMacAddrPtr* (Michal Privoznik),<br/>
      nwfilter: Convert to virMacAddrPtr completely (Michal Privoznik),<br/>
      Convert 'raw MAC address' usages to use virMacAddr (Stefan Berger),<br/>
      Wire up handling for QMP's BALLOON_EVENT (Daniel P. Berrange),<br/>
      Define public API for receiving guest memory balloon events (Daniel P. Berrange),<br/>
      ARMHF: CPU Support for armhf. (Chuck Short),<br/>
      Support creation of sparse LVM volumes (Daniel P. Berrange),<br/>
      Remove all use of virRun in storage code (Daniel P. Berrange),<br/>
      test: Add test case for nodeinfotest if host machine doesn't have NUMA (Peter Krempa),<br/>
      test: Add new test case for nodeinfotest (Peter Krempa),<br/>
      nodeinfo: Fix gathering of nodeinfo data structure (Peter Krempa),<br/>
      nodeinfo_test: Enhance test data before changing nodeinfo gathering (Peter Krempa),<br/>
      S390: Adding testcases for s390 (Viktor Mihajlovski),<br/>
      S390: Domain Schema for s390-virtio machines. (Viktor Mihajlovski),<br/>
      S390: Add support for virtio-s390 devices. (Viktor Mihajlovski),<br/>
      qemu: Change tests to use (modified) qemuDomainAssignAddresses (Viktor Mihajlovski),<br/>
      qemu: Extended qemuDomainAssignAddresses to be callable from everywhere. (Viktor Mihajlovski),<br/>
      build: detect all improper uses of _("%s") (Eric Blake),<br/>
      maint: update preferred contributor name (Eric Blake),<br/>
      storage_conf: Break long line and polish coding style (Peter Krempa),<br/>
      esx: Wrap libcurl multi handle (Matthias Bolte),<br/>
      Switch to using virNetServer APIs for monitor socket (Daniel P. Berrange),<br/>
      Move loop device setup code into virfile.{c,h} (Daniel P. Berrange),<br/>
      Move cgroup objects into virLXCControllerPtr (Daniel P. Berrange),<br/>
      Move monitor into virLXCControllerPtr (Daniel P. Berrange),<br/>
      Move /dev/pts setup out of virLXCControllerRun (Daniel P. Berrange),<br/>
      Move security manager into virLXCControllerPtr object (Daniel P. Berrange),<br/>
      Move loop device FDs into virLXCControllerPtr object (Daniel P. Berrange),<br/>
      Move daemon handshake FD into virLXCControllerPtr (Daniel P. Berrange),<br/>
      Make console handling part of virLXCControllerPtr (Daniel P. Berrange),<br/>
      Store the init PID in the virLXCController object (Daniel P. Berrange),<br/>
      Move veth device management into virLXCControllerPtr object (Daniel P. Berrange),<br/>
      Introduce a virLXCControllerPtr object to hold LXC controller state (Daniel P. Berrange),<br/>
      Allow RPC server to run single threaded (Daniel P. Berrange),<br/>
      Add a opaque parameter to the RPC client init callback (Daniel P. Berrange),<br/>
      vmware: detect when a domain was shut down from the inside (Jean-Baptiste Rouault),<br/>
      Added the attribute vendor_id to the cpu model (Hendrik Schwartke),<br/>
      qemu: add rbd to whitelist of migration-safe formats (Josh Durgin)<br/>
      </li>

      <li>Cleanups:<br/>
      atomic: fix whitespace in previous patch (Eric Blake),<br/>
      virsh: drop unused headers (Eric Blake),<br/>
      maint: prohibit translations in testsuite (Eric Blake),<br/>
      Fix syntax-check failures wrt virsh (Daniel P. Berrange),<br/>
      virsh: kill some double underscores (Eric Blake),<br/>
      Fix the indentions of libvirt.h.in (Osier Yang),<br/>
      build: fix syntax check during 'make distcheck' (Eric Blake),<br/>
      Move some SASL symbols into libvirt_sasl.syms (Daniel P. Berrange),<br/>
      Remove unused qemuProcessAutoDestroyRun decl from header (Daniel P. Berrange),<br/>
      maint: drop a leftover comment line (Eric Blake),<br/>
      Destroy virdomainlist.[ch] (Osier Yang),<br/>
      qemu:rename qemuCheckScsiControllerModel function (Guannan Ren),<br/>
      Don't check the 'connect' command in virsh-all test (Daniel P. Berrange),<br/>
      build: drop conditional use of mdns code (Eric Blake),<br/>
      Remove unused uuidstr variable from datatypes.c (Daniel P. Berrange),<br/>
      Fix indentions (Osier Yang),<br/>
      gitignore: Reorder alphabetically (Michal Privoznik),<br/>
      spec: Remove extra () with return statement (Jiri Denemark),<br/>
      conf: Remove dead code from virConsoleOpen() (Peter Krempa),<br/>
      python: Don't generate bodies for close callback functions (Peter Krempa),<br/>
      maint: regenerate bootstrap (Eric Blake),<br/>
      Remove accidentally committed virNetClientSetEOFNotify symbol (Daniel P. Berrange),<br/>
      Remove two non-existent NWFilter driver symbols from .syms (Daniel P. Berrange),<br/>
      tests: reduce length of nodeinfodata test names (Eric Blake),<br/>
      rpc: remove trailing whitespace character in error string (Guannan Ren),<br/>
      po: avoid spurious double spaces in messages (Eric Blake),<br/>
      virsh: remove extra space between function name and opening brace (Guido Günther),<br/>
      maint: revert gnulib update, until fixed automake is in more distros (Eric Blake),<br/>
      maint: use full author name for previous commit (Eric Blake)<br/>
      </li>
    </ul>

    <h3>0.9.13: July 02 2012</h3>
    <ul>
      <li>Features:<br/>
      S390: support for s390(x) (Thang Pham and Viktor Mihajlovski),<br/>
      snapshot: implement new APIs for esx and vbox (Eric Blake),<br/>
      snapshot: new query APIs and many improvements (Eric Blake),<br/>
      virsh: Allow users to reedit rejected XML (Michal Privoznik),<br/>
      nwfilter: add DHCP snooping (Stefan Berger),<br/>
      Enable driver modules in libvirt RPM (Daniel P. Berrange),<br/>
      Default to enable driver modules for libvirtd (Daniel P. Berrange),<br/>
      storage backend: Add RBD (RADOS Block Device) support (Wido den Hollander),<br/>
      sVirt support for LXC domains inprovement (Daniel P. Berrange and Daniel J Walsh)<br/>
      </li>

      <li>Documentation:<br/>
      virsh: Cleanup virsh -V output (Doug Goldstein),<br/>
      configure: show correct default argument in help (Marc-André Lureau),<br/>
      fix typo in virDomainDestroy API doc (Christophe Fergeau),<br/>
      virsh: fix few typos on desc command (Martin Kletzander),<br/>
      virsh: Update vol-create-as manpage (Michal Privoznik),<br/>
      virsh: Tweak attach-* documentation (Michal Privoznik),<br/>
      small typo in formatdomain.html (Laine Stump),<br/>
      client rpc: Improve debug messages in virNetClientIO (Jiri Denemark),<br/>
      minor fixes to domain interface documentation (Laine Stump),<br/>
      link to FLOSS Weekly podcast, virt blogs (Eric Blake),<br/>
      examples: add consolecallback example python script (Dave Allan),<br/>
      Fix typo in comment start (Daniel P. Berrange),<br/>
      typo in acceleration element (Martin Kletzander),<br/>
      Improve docs about compiling libvirt from GIT (Daniel P. Berrange)<br/>
      </li>

      <li>Portability:<br/>
      Fix compilation on older sanlock (Daniel Veillard),<br/>
      Fix unused parameters / functions in virsh on Win32 (Daniel P. Berrange),<br/>
      Update to latest GNULIB to fix compat with Mingw64 toolchain (Daniel P. Berrange),<br/>
      winsock2.h must always be included before windows.h (Daniel P. Berrange),<br/>
      Switch automated builds to use Mingw64 toolchain instead of Mingw32 (Daniel P. Berrange),<br/>
      openvz: Fix wordsize on 64 bit architectures (Guido Günther),<br/>
      Fixes for check and rpm builds without sanlock (and qemu) (Martin Kletzander),<br/>
      Fix Win32 build by linking to ole32 (Daniel P. Berrange),<br/>
      Add impl of APIs to get user directories on Win32 (Daniel P. Berrange),<br/>
      fix building error on non fedora system (Wen Congyang),<br/>
      Add stub impl of virNetlinkEventServiceLocalPid for Win32 (Daniel P. Berrange),<br/>
      Fix build when configuring with polkit0 (Jim Fehlig),<br/>
      build: fix virnetlink on glibc 2.11 (Eric Blake),<br/>
      Fix build compat with older libselinux for LXC (Daniel P. Berrange),<br/>
      build: really silence the 32-bit warning (Eric Blake)<br/>
      </li>

      <li>Bug Fixes:<br/>
      build: use correct limit for unsigned long long (Eric Blake),<br/>
      nwfilter: Fix memory leak (Stefan Berger),<br/>
      network_conf: Don't free uninitialized pointers while parsing DNS SRV (Peter Krempa),<br/>
      storage: Error out if the target is already mounted for netfs pool (Osier Yang),<br/>
      events: Don't fail on registering events for two different domains (Michal Privoznik),<br/>
      Don't install systemd service files executable (Guido Günther),<br/>
      fix a bug of ref count in virnetserver.c (Hu Tao),<br/>
      Fix deadlock on libvirtd shutdown (Jim Fehlig),<br/>
      openvz: check pointer size instead of int (Guido Günther),<br/>
      domain_conf: fix possible memory leak (Martin Kletzander),<br/>
      error: Fix typos in argument checking macros (Peter Krempa),<br/>
      LXC: fix incorrect DEBUG info (Gao feng),<br/>
      LXC: fix memory leak in lxcContainerSetupExtraMounts (Gao feng),<br/>
      LXC: fix memory leak in lxcContainerGetSubtree (Gao feng),<br/>
      LXC: fix memory leak in lxcContainerMountFSBlockHelper (Gao feng),<br/>
      qemu_agent: Wait for events instead of agent response (Michal Privoznik),<br/>
      Fix launch of libvirtd when DHCP snooping support is not available. (Daniel P. Berrange),<br/>
      qemu: fix potential dead lock (Wen Congyang),<br/>
      virsh: Null terminated the string memcpy from buffer explicitly (Osier Yang),<br/>
      qemu: Fix off-by-one error while unescaping monitor strings (Peter Krempa),<br/>
      virsh: Don't generate invalid XML in attach-disk command (Peter Krempa),<br/>
      client rpc: Fix error checking after poll() (Daniel P. Berrange),<br/>
      client rpc: Send keepalive requests from IO event loop (Jiri Denemark),<br/>
      Fix typo in RPM specfile (Daniel P. Berrange),<br/>
      python: fix snapshot listing bugs (Eric Blake),<br/>
      qemu: Don't overwrite security labels (Michal Privoznik),<br/>
      rpc: Fix memleak in virNetMessageEncodeHeader (Michal Privoznik),<br/>
      Fix privileges on /var/run/libvirt directory (Daniel P. Berrange),<br/>
      Only migrate profile in non-privileged libvirtd instance (Daniel P. Berrange),<br/>
      snapshot: avoid virsh crash with older servers (Eric Blake),<br/>
      LXC: fix memory leak in lxcContainerMountFSBlockAuto (Gao feng),<br/>
      LXC: fix incorrect parameter of mount in lxcContainerMountFSBind (Gao feng),<br/>
      util: Fix deadlock in virLogReset (Jiri Denemark),<br/>
      Assign correct address type to spapr-vlan and spapr-vty. (Li Zhang),<br/>
      command: avoid potential deadlock on handshake (Eric Blake),<br/>
      qemu: better detection of crashed domains (Martin Kletzander),<br/>
      command: avoid deadlock on EPIPE situation (Eric Blake),<br/>
      Fix sync issue in virNetClientStreamEventRemoveCallback (Radu Caragea),<br/>
      qemu: avoid closing fd more than once (Wen Congyang),<br/>
      command: check for fork error before closing fd (Wen Congyang),<br/>
      fdstream: avoid double close bug (Eric Blake),<br/>
      command: avoid double close bugs (Eric Blake),<br/>
      avoid fd leak (Wen Congyang),<br/>
      avoid closing uninitialized fd (Wen Congyang),<br/>
      lxc: return correct number of CPUs (Martin Kletzander),<br/>
      leak_fix.diff (Stefan Berger),<br/>
      Fix typos in RPM dependencies (Daniel P. Berrange),<br/>
      Remove more bogus systemd service dependencies (Daniel P. Berrange),<br/>
      qemu_hotplug: Don't free the PCI device structure after hot-unplug (Peter Krempa),<br/>
      Fix potential events deadlock when unref'ing virConnectPtr (Daniel P. Berrange),<br/>
      qemu: Don't delete USB device on failed qemuPrepareHostdevUSBDevices (Michal Privoznik),<br/>
      nodeinfo: Get the correct CPU number on AMD Magny Cours platform (Osier Yang),<br/>
      nodeinfo: avoid probing host filesystem during test (Eric Blake)<br/>
      </li>

      <li>Improvements:<br/>
      Remove sub-mounts under /dev when starting an LXC container (Daniel P. Berrange),<br/>
      Fix vm's outbound traffic control problem (Eiichi Tsukata),<br/>
      conf: Don't shadow error from virGetDomain() (Peter Krempa),<br/>
      maint: include ignore-value in internal.h (Peter Krempa),<br/>
      vbox: Add support for virConnectListAllDomains() (Peter Krempa),<br/>
      virsh: Add domdisplay cmd for VNC, SPICE and RDP (Doug Goldstein),<br/>
      AUTHORS: Update (Michal Privoznik),<br/>
      S390: Added sysinfo for host on s390(x). (Thang Pham),<br/>
      S390: Fixed core identification for s390 (Viktor Mihajlovski),<br/>
      S390: Fixed Parser for /proc/cpuinfo needs to be adapted for your architecture (Thang Pham),<br/>
      S390: Override QEMU_CAPS_NO_ACPI for s390x (Viktor Mihajlovski),<br/>
      storage backend rbd: Do not prefix rbd: on volume names. (Wido den Hollander),<br/>
      qemu: Improve error if setmem fails for lacking of balloon support (Osier Yang),<br/>
      Include the default listen address in the live guest XML (Daniel P. Berrange),<br/>
      storage: Introduce --inactive for pool-dumpxml (Michal Privoznik),<br/>
      storage: Switch to new def on pool-destroy (Michal Privoznik),<br/>
      Support bind mounting host files, as well as directories in LXC (Daniel J Walsh),<br/>
      Allow NOCONFIGURE=1 to make autogen.sh skip ./configure (Daniel P. Berrange),<br/>
      virsh: Use virXPath wrappers for vncdisplay cmd (Doug Goldstein),<br/>
      Add support for shared sanlock leases (Daniel P. Berrange),<br/>
      Add support for guest bind mounts with LXC (Daniel P. Berrange),<br/>
      Add support for RAM filesystems for LXC (Daniel P. Berrange),<br/>
      virsh: Improve error when trying to change vm's cpu count 0 (Peter Krempa),<br/>
      qemu: Add xhci support (Gerd Hoffmann),<br/>
      virsh: add support for virConnectListAllDomains and clean up cmdList (Peter Krempa),<br/>
      virsh: Rename namesorter to vshNameSorter and clean up indentation (Peter Krempa),<br/>
      Initialize random generator in lxc controller (Jim Fehlig),<br/>
      storage: Set the perms if the pool target already exists for fs pools (Osier Yang),<br/>
      snapshot: require existence before returning success (Eric Blake),<br/>
      drivers: Implement virListAllDomains for drivers using virDomainObj (Peter Krempa),<br/>
      Fix default USB controller for ppc64 (Dipankar Sarma),<br/>
      list: add qemu snapshot list support (Eric Blake),<br/>
      list: new helper function to collect snapshots (Eric Blake),<br/>
      list: provide RPC call for snapshots (Eric Blake),<br/>
      list: provide python bindings for snapshots (Eric Blake),<br/>
      list: use the new snapshot API in virsh when possible (Eric Blake),<br/>
      snapshot: expose new flags in virsh (Eric Blake),<br/>
      snapshot: add additional filters when getting lists (Eric Blake),<br/>
      virsh: make domiftune interface help string consistent (Martin Kletzander),<br/>
      snapshot: merge count and name collection (Eric Blake),<br/>
      snapshot: merge domain and snapshot computation (Eric Blake),<br/>
      snapshot: use metaroot node to simplify management (Eric Blake),<br/>
      conf: Add helper for listing domains on drivers supporting virDomainObj (Peter Krempa),<br/>
      conf: Store managed save image existence in virDomainObj (Peter Krempa),<br/>
      remote: implement remote protocol for virConnectListAllDomains() (Peter Krempa),<br/>
      python: add API exports for virConnectListAllDomains() (Peter Krempa),<br/>
      lib: Add public api to enable atomic listing of guest (Peter Krempa),<br/>
      Add a custom 404 error page for the website (Daniel P. Berrange),<br/>
      qemu_agent: Add some more debug prints (Michal Privoznik),<br/>
      snapshot: use new virsh function for snapshot-list (Eric Blake),<br/>
      snapshot: new virsh function factored from snapshot-list (Eric Blake),<br/>
      autogen: Always abide --system (Cole Robinson),<br/>
      Check for errors when parsing bridge interface XML (Jim Fehlig),<br/>
      Add more debug logging for libvirtd startup (Daniel P. Berrange),<br/>
      schema: Update domain XML schema (Osier Yang),<br/>
      virsh: allow the user to specify vmcore's format (Wen Congyang),<br/>
      qemu: allow the client to choose the vmcore's format (Wen Congyang),<br/>
      qemu: implement qemu's dump-guest-memory (Wen Congyang),<br/>
      Always pivot_root event if the new root source is '/' (Daniel P. Berrange),<br/>
      Improve error message diagnosing incorrect XML CPU mode (Daniel P. Berrange),<br/>
      qemu: Enable disconnecting SPICE clients without changing password (Peter Krempa),<br/>
      virsh: Report name from edited object (Michal Privoznik),<br/>
      virsh: Honor reedit opts printing to a function (Michal Privoznik),<br/>
      network: fully support/use VIR_NETWORK_XML_INACTIVE flag (Laine Stump),<br/>
      Add some missing hook functions (Daniel P. Berrange),<br/>
      server rpc: Remove APIs for manipulating filters on locked client (Jiri Denemark),<br/>
      rpc: Remove unused parameter in virKeepAliveStopInternal (Jiri Denemark),<br/>
      rpc: Do not use timer for sending keepalive responses (Jiri Denemark),<br/>
      client rpc: Separate call creation from running IO loop (Jiri Denemark),<br/>
      rpc: Add APIs for direct triggering of keepalive timer (Jiri Denemark),<br/>
      rpc: Refactor keepalive timer code (Jiri Denemark),<br/>
      client rpc: Drop unused return value of virNetClientSendNonBlock (Jiri Denemark),<br/>
      client rpc: Just queue non-blocking call if another thread has the buck (Jiri Denemark),<br/>
      client rpc: Don't drop non-blocking calls (Jiri Denemark),<br/>
      client rpc: Use event loop for writing (Jiri Denemark),<br/>
      build: fix 'make dist' on virgin checkout (Eric Blake),<br/>
      build: silence gettext warning (Eric Blake),<br/>
      openvz: wire up domainUpdateDeviceFlags (Guido Günther),<br/>
      openvz: add persist parameter to openvzSetDiskQuota (Guido Günther),<br/>
      Introduce virDomainFSIndexByName (Guido Günther),<br/>
      python: use simpler methods (Eric Blake),<br/>
      qemuProcessStop: Switch to flags (Michal Privoznik),<br/>
      snapshot: implement new APIs for qemu (Eric Blake),<br/>
      snapshot: RPC for new query APIs (Eric Blake),<br/>
      snapshot: add 'virsh snapshot-info' (Eric Blake),<br/>
      Two RPM conditional fixes for RHEL-7 (Daniel P. Berrange),<br/>
      snapshot: virsh indentation cleanup (Eric Blake),<br/>
      virsh: make tree listing more flexible (Eric Blake),<br/>
      virsh: remove limits on tree listing (Eric Blake),<br/>
      buf: support peeking at string contents (Eric Blake),<br/>
      Update AUTHORS (Osier Yang),<br/>
      LXC: Delete unused variable src in lxcContainerMountBasicFS (Gao feng),<br/>
      msg_buf_size is unsigned long not size_t (Guido Günther),<br/>
      Only check for cluster fs if we're using a filesystem (Guido Günther),<br/>
      snapshot: add virDomainSnapshotRef API (Eric Blake),<br/>
      Fix missing ) in 2 strings (Cole Robinson),<br/>
      maint: make it easier to copy FORTIFY_SOURCE snippet (Eric Blake),<br/>
      build: fix build without i18n (Eric Blake),<br/>
      spec: Build against systemd for udev (Cole Robinson),<br/>
      build: fix build of fresh checkout (Eric Blake),<br/>
      build: ensure storage driver is used (Eric Blake),<br/>
      rpc: Size up RPC limits (Michal Privoznik),<br/>
      rpc: Switch to dynamically allocated message buffer (Michal Privoznik),<br/>
      build: fix 'make distcheck' issues (Eric Blake),<br/>
      tests: Refresh qemu-1.1.0 data (Jiri Denemark),<br/>
      virsh: Back out if the argument for vol-create-as is malformed (Osier Yang),<br/>
      virsh: Accept UUID as an argument for net-info and net-start (Osier Yang),<br/>
      virsh: Accept UUID as an argument for storage commands (Osier Yang),<br/>
      Fix for parallel port passthrough for QEMU (Beat Jörg),<br/>
      util: fix "make rpm" when viratomic.h is used (Laine Stump),<br/>
      build: allow building with newer glibc-headers and -O0 (Eric Blake),<br/>
      fix make syntax-check failed (Wen Congyang),<br/>
      build: fix sc_prohibit_readlink (Eric Blake),<br/>
      file: Log closing filedescriptors (Jiri Denemark),<br/>
      command: Fix debug message during handshake (Jiri Denemark),<br/>
      virsh: Switch from generated cmd*Edit commands to nongenerated (Michal Privoznik),<br/>
      nwfilter: Add multiple IP address support to DHCP snooping (Stefan Berger),<br/>
      nwfilter: move code for IP address map into separate file (Stefan Berger),<br/>
      qemu: move -name arg to be 1st in "ps x" output (Marti Raudsepp),<br/>
      qemu: fix netdev alias name assignment wrt type='hostdev' (Laine Stump),<br/>
      tools: make virt-pki-validate work with acls and xattrs (Martin Kletzander),<br/>
      build: include augeas-gentest.pl into dist file (Wen Congyang),<br/>
      build: use same perl binary throughout build (Eric Blake),<br/>
      build: fix testing of augeas files in VPATH builds (Eric Blake),<br/>
      build: silence warning from autoconf (Eric Blake),<br/>
      virCommand: Extend debug message for handshake (Michal Privoznik),<br/>
      build: Fixed generating of libvirt_qemu_probes.h (Martin Kletzander),<br/>
      build: don't lose probes.o files (Eric Blake),<br/>
      build: fix missing dependencies for libvirt-qemu.so (Eric Blake),<br/>
      build: don't clean a file that belongs in the tarball (Eric Blake),<br/>
      virsh: avoid strncpy (Eric Blake),<br/>
      build: update to latest gnulib (Eric Blake),<br/>
      Introduce virMacAddr typedef (Stefan Berger),<br/>
      Santize the reporting of VIR_ERR_INVALID_ERROR (Daniel P. Berrange),<br/>
      build: silence libtool during tests (Eric Blake),<br/>
      Fix linking to DTrace probes file (Daniel P. Berrange),<br/>
      Autogenerate augeas test case from default config files (Daniel P. Berrange),<br/>
      Re-order config options in qemu driver augeas lens (Daniel P. Berrange),<br/>
      Fix mistakes in augeas lens (Daniel P. Berrange),<br/>
      Standardize whitespace used in example config files (Daniel P. Berrange),<br/>
      Remove uid param from directory lookup APIs (Daniel P. Berrange),<br/>
      Fix check for socket existence / daemon spawn (Daniel P. Berrange),<br/>
      Remove last usage of PATH_MAX and ban its future use (Daniel P. Berrange),<br/>
      maint: avoid new automake warning about AM_PROG_CC_STDC (Jim Meyering),<br/>
      build: silence libtool warning on probes.o (Eric Blake),<br/>
      tests: run valgrind on real executables, not libtool wrappers (Eric Blake),<br/>
      qemu augeas: Add spice_tls/spice_tls_x509_cert_dir (Douglas Schilling Landgraf),<br/>
      tests: back to short test names (Eric Blake),<br/>
      maint: ignore more files from version control (Eric Blake),<br/>
      Add sentinel for virErrorDomain enum (Daniel P. Berrange),<br/>
      Add parsing for VIR_ENUM_IMPL &amp; VIR_ENUM_DECL in apibuild.py (Daniel P. Berrange),<br/>
      security: Switch to C99-style struct initialization (Michal Privoznik),<br/>
      Add test case for loading driver modules (Daniel P. Berrange),<br/>
      Override default driver dir when running from GIT (Daniel P. Berrange),<br/>
      Split QEMU dtrace probes into separate file (Daniel P. Berrange),<br/>
      Replace RTLD_LOCAL with RTLD_GLOBAL (Daniel P. Berrange),<br/>
      Ensure LXC driver links against libblkid explicitly. (Daniel P. Berrange),<br/>
      Remove libvirt_test.la library (Daniel P. Berrange),<br/>
      Fix broken linkage of libvirt_driver_nodedev.la (Daniel P. Berrange),<br/>
      Only build server side drivers as modules (Daniel P. Berrange),<br/>
      Fix dep from libvirt-lock-sanlock RPM (Daniel P. Berrange),<br/>
      openvz: add quota argument when creating container (Guido Günther),<br/>
      openvz: support file system quota reporting (Guido Günther),<br/>
      Introduce filesystem limits to virDomainFSDef (Guido Günther),<br/>
      Introduce virDomainParseScaledValue (Guido Günther),<br/>
      util: export virBufferTrim (Laine Stump),<br/>
      virBuffer: add way to trim back extra text (Eric Blake),<br/>
      build: fix unused variable after last patch (Eric Blake),<br/>
      nwfilter: Add support for ipset (Stefan Berger),<br/>
      Adds support to param 'vcpu_time' in qemu_driver. (Hu Tao),<br/>
      Add a new param 'vcpu_time' to virDomainGetCPUStats (Hu Tao),<br/>
      tests: add ich6 codec type test to qemuxml2argv-sound-device (Marc-André Lureau),<br/>
      qemu: honour sound &lt;codec&gt; sub-elements (Marc-André Lureau),<br/>
      domain: add &lt;codec&gt; sound sub-element (Marc-André Lureau),<br/>
      qemu: test CAPS_HDA_MICRO (Marc-André Lureau),<br/>
      nodeinfo: test more details (Eric Blake),<br/>
      Add a virLogMessage alternative taking va_list args (Daniel P. Berrange),<br/>
      build: fix recent syntax-check breakage (Eric Blake),<br/>
      qemu: Rollback on used USB devices (Michal Privoznik),<br/>
      Reject any non-option command line arguments (Daniel P. Berrange),<br/>
      Remount cgroups controllers after setting up new /sys in LXC (Daniel P. Berrange),<br/>
      Trim /proc &amp; /sys subtrees before mounting new instances (Daniel P. Berrange),<br/>
      Avoid LXC pivot root in the root source is still / (Daniel P. Berrange),<br/>
      Mount fresh instance of sysfs/selinux in LXC (Daniel P. Berrange),<br/>
      Convert the LXC driver to use the security driver API for mount options (Daniel Walsh),<br/>
      Add security driver APIs for getting mount options (Daniel Walsh),<br/>
      Add support for LXC specific SELinux configuration (Daniel Walsh),<br/>
      Use private data struct in SELinux driver (Daniel Walsh),<br/>
      Don't enable the AppArmour security driver with LXC (Daniel Walsh),<br/>
      Pass the virt driver name into security drivers (Daniel Walsh),<br/>
      Remove bogus udev.target dep from libvirtd unit (Daniel P. Berrange),<br/>
      qemu: Add support for -no-user-config (Jiri Denemark),<br/>
      Set a sensible default master start port for ehci companion controllers (Daniel P. Berrange),<br/>
      Fix logic for assigning PCI addresses to USB2 companion controllers (Daniel P. Berrange),<br/>
      Fix virDomainDeviceInfoIsSet() to check all struct fields (Daniel P. Berrange),<br/>
      Remove redundant trailing slash in user dir paths (Daniel P. Berrange),<br/>
      Allow stack traces to be included with log messages (Daniel P. Berrange),<br/>
      Move user libvirtd socket out of abstract namespace (Daniel P. Berrange),<br/>
      Add openvz_util.c to POTFILES (Daniel P. Berrange),<br/>
      Add bundled(gnulib) to RPM specfile (Daniel P. Berrange),<br/>
      openvz: determine kb/pages only once (Guido Günther),<br/>
      libvirt-guests: Remove LISTFILE if it's empty when stopping service (Osier Yang),<br/>
      qemu: Set memory policy using cgroup if placement is auto (Osier Yang),<br/>
      qemu: Use the CPU index in capabilities to map NUMA node to cpu list. (Osier Yang),<br/>
      Assign spapr-vio bus address to ibmvscsi controller (Li Zhang),<br/>
      sanlock: fix locking for readonly devices (David Weber),<br/>
      nodeinfo: add some more tests (Eric Blake),<br/>
      nodeinfo: drop static variable (Eric Blake),<br/>
      maint: fix AUTHORS (Eric Blake),<br/>
      Use XDG Base Directories instead of storing in home directory (William Jon McCann)<br/>
      </li>

      <li>Cleanups:<br/>
      Remove accidentally added Patch: lines from mingw-libvirt.spec.in (Daniel P. Berrange),<br/>
      Add /tools/libvirt-guests.service to .gitignore (Guido Günther),<br/>
      sanlock: Properly indent (Michal Privoznik),<br/>
      Remove stray debug fprintf in XML parser (Daniel P. Berrange),<br/>
      util: Fix the indention (Osier Yang),<br/>
      LXC: avoid useless duplicate memory free (Gao feng),<br/>
      driver: Clean up driver header to space indentation (Peter Krempa),<br/>
      build: fix whitespace damage (Eric Blake),<br/>
      build: hoist qemu dependence on yajl to configure (Eric Blake),<br/>
      maint: command.c whitespace cleanups (Eric Blake),<br/>
      Revert "rpc: Discard non-blocking calls only when necessary" (Jiri Denemark<br/>
      </li>
    </ul>

    <h3>0.9.12: May 14 2012</h3>
    <ul>
      <li>Features:<br/>
      qemu: allow snapshotting of sheepdog and rbd disks (Josh Durgin),<br/>
      blockjob: add new APIs (Eric Blake)<br/>
      </li>

      <li>Documentation:<br/>
      mention migration issue of which credentials are used (Eric Blake),<br/>
      Add 'maintenance releases' link in 'News' sidebar (Cole Robinson),<br/>
      Added Snooze cloud manager to the IaaS section (Eugen Feller),<br/>
      python: Fix doc directory name for stable releases (Cole Robinson),<br/>
      virsh: Fix and clarify the --title flag for the list command in man page (Peter Krempa),<br/>
      Improve the schema for fs device (Osier Yang),<br/>
      openvz: Correct the comments for new node APIs (Osier Yang),<br/>
      fix 'omitted' typo in &lt;cputune&gt; doc (Christophe Fergeau),<br/>
      add missing &lt;span&gt; in &lt;vcpu placement&gt; doc (Christophe Fergeau),<br/>
      fix path to openvz network configuration file (Guido Günther),<br/>
      Fix comment about GNUTLS initialization/cleanup (Daniel P. Berrange),<br/>
      fix typo in previous patch (Eric Blake),<br/>
      news.html.in: Fix &lt;br&gt; void tag (Michal Privoznik)<br/>
      </li>

      <li>Portability:<br/>
      qemu: fix build when !HAVE_NUMACTL (Eric Blake),<br/>
      netlink: Fix build with libnl-3 (Jiri Denemark),<br/>
      build: avoid link failure on Windows (Eric Blake),<br/>
      qemu: avoid 32-bit compiler warning (Eric Blake),<br/>
      build: fix build on cygwin (Eric Blake),<br/>
      storage: fix build with iscsi (Eric Blake),<br/>
      build: fix bootstrap on RHEL (Eric Blake),<br/>
      win32: Properly handle TlsGetValue returning NULL (Matthias Bolte),<br/>
      build: avoid type-punning in vbox (Eric Blake),<br/>
      build: fix fresh checkout on RHEL5 (Eric Blake),<br/>
      fix dependencies on DBus (Daniel P. Berrange),<br/>
      tests: Fix libvirtdconftest in VPATH build (Jiri Denemark),<br/>
      build: avoid s390 compiler warnings (Eric Blake),<br/>
      Fix compilation error on 32bit (Stefan Berger),<br/>
      test: fix build errors with gcc 4.7.0 and -O0 (Laine Stump),<br/>
      Pull in GNULIB regex module for benefit of test suite on Win32 (Daniel P. Berrange),<br/>
      Fix format specifiers in test cases on Win32 (Daniel P. Berrange)<br/>
      </li>

      <li>Bug Fixes:<br/>
      esx: Fix memory leaks in error paths related to transferred ownership (Matthias Bolte),<br/>
      qemu: Don't skip detection of virtual cpu's on non KVM targets (Peter Krempa),<br/>
      qemu: Re-detect virtual cpu threads after cpu hot (un)plug. (Peter Krempa),<br/>
      build: fix stamp file name (Eric Blake),<br/>
      usb: fix crash when failing to attach a second usb device (Guannan Ren),<br/>
      build: Fix the typo in configure.ac (Osier Yang),<br/>
      conf: Fix memory leaks in virStoragePoolDefParseSource (Alex Jia),<br/>
      Report error when parsing character device target type (Jim Fehlig),<br/>
      snapshot: allow block devices past cgroup (Eric Blake),<br/>
      domain_conf: add "default" to list of valid spice channels (Alon Levy),<br/>
      domain_conf: add "usbredir" to list of valid spice channels (Alon Levy),<br/>
      virsh: avoid heap corruption leading to virsh abort (Jim Meyering),<br/>
      util: fix libvirtd startup failure due to netlink error (Laine Stump),<br/>
      qemu: call usb search function for hostdev initialization and hotplug (Guannan Ren),<br/>
      qemu: Emit compatible XML when migrating a domain (Jiri Denemark),<br/>
      qemu: don't modify domain on failed blockiotune (Eric Blake),<br/>
      node_device: fix possible non-terminated string (Stefan Berger),<br/>
      uuid: fix possible non-terminated string (Stefan Berger),<br/>
      tests: fix resource leak (Stefan Berger),<br/>
      qemu: fix resource leak (Stefan Berger),<br/>
      vmx: fix resource leak (Stefan Berger),<br/>
      Coverity: Fix resource leak in virnetlink.c (Osier Yang),<br/>
      Coverity: Fix resource leak in nodeinfo.c (Osier Yang),<br/>
      Coverity: Fix resource leak in test driver (Osier Yang),<br/>
      Coverity: Fix resource leak in xen driver (Osier Yang),<br/>
      Coverity: Fix resource leaks in phyp driver (Osier Yang),<br/>
      Coverity: Fix the forward_null error in Python binding codes (Osier Yang),<br/>
      Correct indent errors in the function qemuDomainNetsRestart (Li Zhang),<br/>
      Make lxcContainerSetStdio the last thing to be called in container startup (Daniel P. Berrange),<br/>
      maint: avoid false positives on unmarked diagnostics (Eric Blake),<br/>
      util: Avoid libvirtd crash in virNetDevTapCreate (Alex Jia),<br/>
      storage: Break out the loop if duplicate pool is found (Osier Yang),<br/>
      qemu: Make sure qemu can access its directory in hugetlbfs (Jiri Denemark),<br/>
      More coverity findings addressed (Stefan Berger),<br/>
      blockjob: fix block-stream bandwidth race (Eric Blake),<br/>
      lxc: Fix coverity findings (Stefan Berger),<br/>
      Serialize running apibuild.py (Cole Robinson),<br/>
      macvtap: fix a typo (Stefan Berger),<br/>
      nwfilter: address more coverity findings (Stefan Berger),<br/>
      nwfilter: address coverity findings (Stefan Berger),<br/>
      util: fix error messages in virNetlinkEventServiceStart (Laine Stump),<br/>
      qemu: Avoid bogus error at the end of tunnelled migration (Jiri Denemark),<br/>
      qemu: Fix detection of failed migration (Jiri Denemark),<br/>
      rpc: Discard non-blocking calls only when necessary (Jiri Denemark),<br/>
      qemu: Preserve original error during migration (Jiri Denemark),<br/>
      util: fix crash when starting macvtap interfaces (Laine Stump),<br/>
      fix memleak in linuxParseCPUmap (Hu Tao),<br/>
      vbox: Fix passing an empty IMedium* array to IMachine::Delete (Matthias Bolte),<br/>
      esx: Fix segfault in esxConnectToHost (Ryan Woodsmall),<br/>
      virnetserver: handle sigaction correctly (Eric Blake),<br/>
      virsh: avoid uninitialized memory usage (Eric Blake),<br/>
      nwfilter: Fix support for trusted DHCP servers (Stefan Berger),<br/>
      Fix a memory leak (Stefan Berger),<br/>
      Do not enforce source type of console[0] (Jan Kiszka),<br/>
      storage: lvm: use correct lv* command parameters (Cole Robinson),<br/>
      Fix macvtap detection by also checking for IFLA_VF_MAX (Guido Günther),<br/>
      conf: Avoid double assignment in virDomainDiskRemove (Michal Privoznik),<br/>
      qemu: Fix mem leak in qemuProcessInitCpuAffinity (Michal Privoznik),<br/>
      qemu,util: fix netlink callback registration for migration (D. Herrendoerfer),<br/>
      qemuOpenFile: Don't force chown on NFS (Michal Privoznik),<br/>
      daemon: Plug memory leaks (Alex Jia),<br/>
      blockjob: allow for fast-finishing job (Eric Blake),<br/>
      qemu: Fix deadlock when qemuDomainOpenConsole cleans up a connection (Peter Krempa),<br/>
      snapshot: fix memory leak on error (Eric Blake),<br/>
      qemu_ga: Don't overwrite errors on FSThaw (Michal Privoznik),<br/>
      xen config: No vfb in HVM guest configuration (Stefan Bader),<br/>
      virURIParse: don't forget to copy the user part (Guido Günther),<br/>
      test: fix segfault in networkxml2argvtest (Laine Stump),<br/>
      conf: Plug memory leaks on virDomainDiskDefParseXML (Alex Jia),<br/>
      Fix parallel build in docs/ directory (Daniel P. Berrange),<br/>
      qemu: Don't leak temporary list of USB devices (Michal Privoznik)<br/>
      </li>

      <li>Improvements:<br/>
      qemu: Refactor qemuDomainSetVcpusFlags (Peter Krempa),<br/>
      numad: Update comments in libvirt.spec.in (Osier Yang),<br/>
      numad: Check numactl-devel if compiled with numad support (Osier Yang),<br/>
      numad: Divide cur_balloon by 1024 before passing it to numad (Osier Yang),<br/>
      numad: Always output 'placement' of &lt;vcpu&gt; (Osier Yang),<br/>
      numad: Copy 'placement' of &lt;numatune&gt; to &lt;vcpu&gt; by default (Osier Yang),<br/>
      numad: Set memory policy from numad advisory nodeset (Osier Yang),<br/>
      tests: add some self-documentation to tests (Alon Levy),<br/>
      util: set src_pid for virNetlinkCommand when appropriate (Laine Stump),<br/>
      util: function to get local nl_pid used by netlink event socket (Laine Stump),<br/>
      util: allow specifying both src and dst pid in virNetlinkCommand (Laine Stump),<br/>
      openvz: simplify openvzDomainDefineCmd by using virCommandPtr (Guido Günther),<br/>
      usb: create functions to search usb device accurately (Guannan Ren),<br/>
      rpm: Handle different source URLs for maint releases (Cole Robinson),<br/>
      qemu: Don't use virDomainDefFormat* directly (Jiri Denemark),<br/>
      qemu: reject blockiotune if qemu too old (Eric Blake),<br/>
      util: remove error log from stubs of virNetlinkEventServiceStart|Stop (Laine Stump),<br/>
      openvz: read vmguarpages/privvmpages to set memory tunables (Guido Günther),<br/>
      build: support libnl-3 (Serge Hallyn),<br/>
      util: add functions for iterating over json object (Dmitry Guryanov),<br/>
      build: update pid_t type static check (Marc-André Lureau),<br/>
      build: fix output of pid values (Marc-André Lureau),<br/>
      virsh: output scaled values with correct units (Eric Blake),<br/>
      virsh: make -h always give help (Eric Blake),<br/>
      build: make ATTRIBUTE_NONNULL() a NOP unless STATIC_ANALYSIS is on (Laine Stump),<br/>
      Ensure logging is initialized early in libvirt_lxc (Daniel P. Berrange),<br/>
      Ensure LXC security driver is set unconditonally (Daniel P. Berrange),<br/>
      Ensure libvirt_lxc process loads the live XML config (Daniel P. Berrange),<br/>
      qemu: change rbd auth_supported separation character to ; (Josh Durgin),<br/>
      storage: Allow multiple hosts for a storage pool (Wido den Hollander),<br/>
      qemu_agent: Report error class at least (Michal Privoznik),<br/>
      configure: Use ustar format for dist tarball (Cole Robinson),<br/>
      qemu: Use common helper when probing qemu capabilities (Jiri Denemark),<br/>
      qemu: improve errors related to offline domains (Eric Blake),<br/>
      keepalive: Add ability to disable keepalive messages (Peter Krempa),<br/>
      Add new functions to virSocketAddr (Stefan Berger),<br/>
      macvtap: use embedded buffers (Stefan Berger),<br/>
      Improve on virAtomic implementation (Stefan Berger),<br/>
      build: Fix version of gettext macros (Peter Krempa),<br/>
      openvz: add network interface stats (Guido Günther),<br/>
      blockjob: enhance xml to track mirrors across libvirtd restart (Eric Blake),<br/>
      blockjob: add 'blockcopy' to virsh (Eric Blake),<br/>
      cpu: Improve error reporting on incompatible CPUs (Peter Krempa),<br/>
      openvz: wire up getHostname (Guido Günther),<br/>
      build: avoid strtol and strtod (Eric Blake),<br/>
      conf: tighten up XML integer parsing (Eric Blake),<br/>
      virsh: avoid strtol (Eric Blake),<br/>
      Support for atomic operations on integers (Stefan Berger),<br/>
      Implement virHashRemoveAll function (Stefan Berger),<br/>
      util: only register callbacks for CREATE operations in virnetdevmacvlan.c (D. Herrendoerfer),<br/>
      blockjob: add virsh blockpull --wait (Eric Blake),<br/>
      qemu: use consistent error when qemu binary is too old (Eric Blake),<br/>
      vbox: avoid provoking assertions in VBoxSVC (Jean-Baptiste Rouault),<br/>
      conf: Do not parse cpuset only if the placement is auto (Osier Yang),<br/>
      tests: Update read-bufsiz to delete the UUID of vm XML (Osier Yang),<br/>
      test: Set the fixed uuid for the default XMLs (Osier Yang),<br/>
      qemu: Split ide-drive into ide-cd and ide-hd (Osier Yang),<br/>
      qemu: Split scsi-disk into into scsi-hd and scsi-cd (Osier Yang),<br/>
      xen: do not use ioemu type for any emulated NIC (Stefan Bader),<br/>
      qemuProcessStart: Switch to flags instead of bunch booleans (Michal Privoznik),<br/>
      qemu: Avoid the memory allocation and freeing (Osier Yang),<br/>
      numad: Ignore cpuset if placement is auto (Osier Yang),<br/>
      numad: Convert node list to cpumap before setting affinity (Osier Yang),<br/>
      openvz: wire up more node information functions (Guido Günther),<br/>
      virnetdev: Check for defined IFLA_VF_* (Philipp Hahn),<br/>
      Web placeholder for pending patches on the web site (Daniel Veillard),<br/>
      xend_internal: Use domain/status for shutdown check (Stefan Bader),<br/>
      blockjob: wire up qemu async virDomainBlockJobAbort (Eric Blake),<br/>
      blockjob: optimize JSON event handler lookup (Eric Blake),<br/>
      blockjob: add API for async virDomainBlockJobAbort (Adam Litke),<br/>
      blockjob: add qemu capabilities related to block pull jobs (Eric Blake),<br/>
      qemu: Warn on possibly incorrect usage of EnterMonitor* (Jiri Denemark),<br/>
      qemu: Track job owner for better debugging (Jiri Denemark),<br/>
      qemu: Avoid excessive calls to qemuDomainObjSaveJob() (Jiri Denemark),<br/>
      daemon: Add libvirtd-config.c to the list of files to translate (Jiri Denemark),<br/>
      Wire up &lt;loader&gt; to set the QEMU BIOS path (Daniel P. Berrange),<br/>
      virsh: Clean up usage of boolean flag variables (Peter Krempa),<br/>
      virsh: Clarify use of the --managed-save flag for the list command (Peter Krempa),<br/>
      Replace daemon-conf test script with a proper test case (Daniel P. Berrange),<br/>
      Switch libvirtd config loading code to use error APIs (Daniel P. Berrange),<br/>
      Add API for loading daemon config from in-memory blob (Daniel P. Berrange),<br/>
      Split libvirtd config file loading out into separate files (Daniel P. Berrange),<br/>
      UML: fix iteration over consoles (MATSUDA, Daiki),<br/>
      tests: avoid compiler warnings (Eric Blake),<br/>
      openvz: support vzctl 3.1 (Ilja Livenson),<br/>
      Don't install sysctl file on non-Linux hosts (Daniel P. Berrange),<br/>
      Add linuxNodeInfoCPUPopulate to src/libvirt_linux.syms (Daniel P. Berrange),<br/>
      qemu: Build activeUsbHostdevs list on process reconnect (Michal Privoznik),<br/>
      qemu: Delete USB devices used by domain on stop (Michal Privoznik),<br/>
      Fix initial hypervisor conditionals (Daniel P. Berrange),<br/>
      Remove bogus xen-devel dep from libvirt-devel RPM (Daniel P. Berrange),<br/>
      Introduce per-hypervisor virtual RPMs (Daniel P. Berrange),<br/>
      Split config files &amp; daemon off from main daemon RPM (Daniel P. Berrange),<br/>
      Remove API XML files from libvirt RPM (Daniel P. Berrange),<br/>
      Move all documentation into a -docs sub-RPM (Daniel P. Berrange),<br/>
      virsh: Clarify escape sequence (Michal Privoznik)<br/>
      </li>

      <li>Cleanups:<br/>
      building: remove libvirt_dbus.syms from EXTRA_DIST (Wen Congyang),<br/>
      conf: remove redundant () (Eric Blake),<br/>
      util: remove dead casts (Eric Blake),<br/>
      virsh: minor syntactic cleanups (Eric Blake),<br/>
      gitignore: Reorder alphabetically (Michal Privoznik)<br/>
      </li>
    </ul>

    <h3>0.9.11: Apr 03 2012</h3>
    <ul>
      <li>Features:<br/>
      Add support for the suspend event (Osier Yang),<br/>
      Add support for event tray moved of removable disks (Osier Yang),<br/>
      qemu: Support numad (Osier Yang),<br/>
      cpustats: API, improvements and qemu support (KAMEZAWA Hiroyuki and Eric Blake),<br/>
      qemu: support type='hostdev' network devices at domain start (Laine Stump),<br/>
      Introduce virDomainPMWakeup API (Michal Privoznik),<br/>
      network: support Open vSwitch (Ansis Atteka),<br/>
      a number of snapshot improvements (Eric Blake)<br/>
      </li>

      <li>Portability:<br/>
      build: fix build on cygwin (Eric Blake),<br/>
      build: fix mingw ssize_t, syntax check (Eric Blake),<br/>
      Disable build of commandhelper &amp; ssh on Win32 (Daniel P. Berrange),<br/>
      build: avoid 'devname' for BSD (Eric Blake),<br/>
      build: avoid frame size error when building without -O2 (Laine Stump),<br/>
      spec: Add missed dependancy for numad (Osier Yang),<br/>
      util: fix build mingw (and all non-linux) build failure (Laine Stump),<br/>
      Build error on OSX in src/util/virnetlink.c (Duncan Rance),<br/>
      Fix build after commit e3ba4025 (Jim Fehlig),<br/>
      build: Fix build with dtrace + apparmor (Jiri Denemark),<br/>
      build: fix output of pid values (Eric Blake),<br/>
      avoid global variable shadowed (Hu Tao),<br/>
      lxc: Cleaner fix for compilation without SELinux (Martin Kletzander),<br/>
      Fix compilation on MacOS X (Lincoln Myers)<br/>
      </li>

      <li>Documentation:<br/>
      snapshot: fix virsh docs (Eric Blake),<br/>
      Expand docs for timer tick policy (Daniel P. Berrange),<br/>
      Add documentation for new attribute tray of disk target (Osier Yang),<br/>
      Clarify virsh freecell manpage entry (Dave Allan),<br/>
      fix typo (Zhou Peng),<br/>
      Clarify what documentation is being referenced (Dave Allan),<br/>
      Minor docs fix (Martin Kletzander),<br/>
      libvirt: fix comment typo (Alex Jia),<br/>
      fix usage example on setting log levels (Eric Blake),<br/>
      use correct terminology for 1024 bytes (Eric Blake),<br/>
      Fix typo (Osier Yang),<br/>
      Fix typo in domain XML documentation (Christophe Fergeau),<br/>
      storage: fix typo (Michal Privoznik),<br/>
      comments wiping supported algorithms (Alex Jia),<br/>
      Fix libvirt name in qemu commandline namespace URL (Michal Privoznik),<br/>
      virsh: Break long lines in virsh.pod (Osier Yang),<br/>
      Update bug reporting page (Dave Allan),<br/>
      lib: Fix function documentation for virConnectListDomains (Peter Krempa),<br/>
      virsh: Fix docs for list command (Peter Krempa)<br/>
      </li>

      <li>Bug Fixes:<br/>
      qemu: Start nested job in qemuDomainCheckEjectableMedia (Jiri Denemark),<br/>
      qemu: fix memory leak in virDomainGetVcpus (Laine Stump),<br/>
      conf: allow fuzz in XML with cur balloon &gt; max (Eric Blake),<br/>
      qemu: reflect any memory rounding back to xml (Eric Blake),<br/>
      qemu: support live change of the bridge used by a guest network device (Hendrik Schwartke),<br/>
      qemu_agent: Issue guest-sync prior to every command (Michal Privoznik),<br/>
      conf: Prevent crash of libvirtd without channel target name (Alex Jia),<br/>
      fix a deadlock when qemu cannot start (Wen Congyang),<br/>
      qemu: Make migration fail when port profile association fails on the dst host (Christian Benvenuti),<br/>
      virsh: plug memory leaks on failure path (Alex Jia),<br/>
      snapshot: don't pass NULL to QMP command creation (Eric Blake),<br/>
      qemu: Avoid entering monitor with locked driver (Jiri Denemark),<br/>
      Leave all child processes running when stopping systemd service (Daniel P. Berrange),<br/>
      python: Avoid memory leaks on libvirt_virNodeGetCPUStats (Alex Jia),<br/>
      qemu: Avoid dangling migration-out job when client dies (Jiri Denemark),<br/>
      qemu: Avoid dangling migration-in job on shutoff domains (Jiri Denemark),<br/>
      qemu: Use unlimited speed when migrating to file (Jiri Denemark),<br/>
      python: Avoid memory leaks on libvirt_virNodeGetMemoryStats (Alex Jia),<br/>
      conf: forbid use of multicast mac addresses (Laine Stump),<br/>
      conf: return immediately on error in dhcp host element (Laine Stump),<br/>
      util: fail attempts to use same mac address for guest and tap (Laine Stump),<br/>
      snapshot: make quiesce a bit safer (Eric Blake),<br/>
      virConfGetValue: Fixed NULL pointer check (Martin Kletzander),<br/>
      Fix handling of blkio deviceWeight empty string (Daniel P. Berrange),<br/>
      remote: Fix migration leaks (Osier Yang),<br/>
      lib: Don't access configuration if none is present (Peter Krempa),<br/>
      qemuDomainDetachPciDiskDevice: Free allocated cgroup (Michal Privoznik),<br/>
      virsh: fix invalid free (Alex Jia),<br/>
      qemu: Reverse condition in qemuDomainCheckDiskPresence (Michal Privoznik),<br/>
      qemu: fix segfault when detaching non-existent network device (Guannan Ren),<br/>
      qemu: Fix (managed)save and snapshots with host mode CPU (Jiri Denemark),<br/>
      qemu: support disk filenames with comma (Eric Blake),<br/>
      Fix a few typo in translated strings (Daniel Veillard),<br/>
      qemuBuildCommandLine: Don't add tlsPort if none set (Michal Privoznik),<br/>
      qemu: eliminate memory leak in qemuDomainUpdateDeviceConfig (Laine Stump),<br/>
      util: eliminate device object leaks related to virDomain*Remove*() (Laine Stump),<br/>
      qemu: don't 'remove' hostdev objects from domain if operation fails (Laine Stump),<br/>
      util: Don't overflow on errno in virFileAccessibleAs (Michal Privoznik),<br/>
      sanlock: Use STREQ_NULLABLE instead of STREQ on strings that may be null (Peter Krempa),<br/>
      qemu: Fix startupPolicy for snapshot-revert (Michal Privoznik),<br/>
      rpc: allow truncated return for virDomainGetCPUStats (Eric Blake),<br/>
      conf: fix error log with "address address" (Laine Stump),<br/>
      Ensure max_id is initialized in linuxParseCPUmap() (Daniel P. Berrange),<br/>
      util: eliminate crash in virNetDevMacVLanCreateWithVPortProfile (Laine Stump),<br/>
      rpc: Fix client crash on connection close (Jiri Denemark),<br/>
      Correct a check for capacity arg of storageVolumeResize() (Zeeshan Ali (Khattak)),<br/>
      qemu: Don't emit tls-port spice option if port is -1 (Jiri Denemark),<br/>
      libxl: eliminate memory leak in libxmlDomainModifyDeviceFlags (Laine Stump),<br/>
      qemu: fix cleanup of bridge during failure of qemuDomainAttachNetDevice (Laine Stump),<br/>
      qemu: unescape HMP commands before converting them to json (Josh Durgin),<br/>
      virsh: fix informational message in iface-bridge command (Laine Stump),<br/>
      virterror: Misleading error message when name is missing (Benjamin Cama),<br/>
      util: Fix virFileAccessibleAs return path from parent (Michal Privoznik),<br/>
      qemu: Prevent crash of libvirtd without guest agent (Alex Jia),<br/>
      qemu: Unlock monitor when connecting to dest qemu fails (Jiri Denemark),<br/>
      qemu: Fix segfault when host CPU is empty (Jiri Denemark),<br/>
      Fix polkit0 authentication (Jim Fehlig),<br/>
      snapshot: fix snapshot deletion use-after-free (Eric Blake),<br/>
      daemon: fix logic bug with virAsprintf (Eric Blake),<br/>
      daemon: plug memory leak (Eric Blake),<br/>
      Fix typos in API XML file paths (Daniel P. Berrange)<br/>
      </li>

      <li>Improvements:<br/>
      Xen: Fix &lt;clock&gt; handling (Philipp Hahn),<br/>
      Support clock=variable relative to localtime (Philipp Hahn),<br/>
      python: improve conversion validation (Eric Blake),<br/>
      Fix client only RPM build &amp; other misc RPM problems (Daniel P. Berrange),<br/>
      Refactor the libvirt RPM daemon pieces (Daniel P. Berrange),<br/>
      virnetdevtap: Don't check for flags in virNetDevTapCreateFlags (Michal Privoznik),<br/>
      Consistent style for usage of sizeof operator (Daniel P. Berrange),<br/>
      Don't redefine the CPU comparison constants in CPU test (Daniel P. Berrange),<br/>
      Fix some format specifiers for size_t vs ssize_t (Daniel P. Berrange),<br/>
      build: silence recent syntax check violations (Eric Blake),<br/>
      private.syms: Add virNetDevMacVLanRestartWithVPortProfile (Zhou Peng),<br/>
      Set default name for SPICE agent channel (Christophe Fergeau),<br/>
      python: make python APIs use these helper functions (Guannan Ren),<br/>
      python: Add new helper functions for python to C integral conversion (Guannan Ren),<br/>
      Enable all warnings permanently &amp; default to -Werror for GIT builds (Daniel P. Berrange),<br/>
      Enable build of test suite programs by default for GIT checkouts (Daniel P. Berrange),<br/>
      Change the default of mdns_adv to false (Stef Walter),<br/>
      Add LXC XML files to schema test &amp; fix problems this uncovers (Daniel P. Berrange),<br/>
      Add support for setting init argv for LXC (Daniel P. Berrange),<br/>
      Detect location fo selinux mount point (Daniel P. Berrange),<br/>
      qemu,util: on restart of libvirt restart vepa callbacks (D. Herrendoerfer),<br/>
      build: fix "missing initializer" error in qemu_process.c (Laine Stump),<br/>
      build: fix "missing initializer" errors in virsh.c (Laine Stump),<br/>
      Added syntax-check rule for return with parentheses (Martin Kletzander),<br/>
      Cleanup for a return statement in source files (Martin Kletzander),<br/>
      Fix and test round-trip of query parameters (Eric Blake),<br/>
      snapshot: improve qemu handling of reused snapshot targets (Eric Blake),<br/>
      snapshot: wire up qemu transaction command (Eric Blake),<br/>
      snapshot: add support for qemu transaction command (Eric Blake),<br/>
      snapshot: rudimentary qemu support for atomic disk snapshot (Eric Blake),<br/>
      snapshot: make offline qemu snapshots atomic (Eric Blake),<br/>
      snapshot: add atomic create flag (Eric Blake),<br/>
      snapshot: add qemu capability for 'transaction' command (Eric Blake),<br/>
      build: fix incorrect enum declaration (Eric Blake),<br/>
      Add qemu support for ppc64 on FC16 or above for rpm packaging (Li Zhang),<br/>
      Fix typo s/virURIFormatQuery/virURIFormatParams/ (Daniel P. Berrange),<br/>
      qemu: Update domain status to running while wakeup event is emitted (Osier Yang),<br/>
      qemu: Update domain state to pmsuspended while suspend event occurs (Osier Yang),<br/>
      New domain state pmsuspended (Osier Yang),<br/>
      Add support for the wakeup event (Osier Yang),<br/>
      qemu: Update tray status while tray moved event is emitted (Osier Yang),<br/>
      qemu: Prohibit setting tray status as open for block type disk (Osier Yang),<br/>
      qemu: Do not start with source for removable disks if tray is open (Osier Yang),<br/>
      conf: Parse and for the tray attribute (Osier Yang),<br/>
      Implement sysinfo on PowerPC. (Prerna Saxena),<br/>
      Lookup auth credentials in config file before prompting (Daniel P. Berrange),<br/>
      Refactor code prompting for SASL credentials (Daniel P. Berrange),<br/>
      Add helper API for finding auth file path (Daniel P. Berrange),<br/>
      Rename virRequest{Username,Password} to virAuthGet{Username,Password} (Daniel P. Berrange),<br/>
      Rename src/util/authhelper.[ch] to src/util/virauth.[ch] (Daniel P. Berrange),<br/>
      Add a virKeyfilePtr object for parsing '.ini' files (Daniel P. Berrange),<br/>
      Convert drivers over to use virURIPtr for query params (Daniel P. Berrange),<br/>
      Store parsed query parameters directly in the virURIPtr struct (Daniel P. Berrange),<br/>
      Use a libvirt custom struct for virURIPtr (Daniel P. Berrange),<br/>
      Centralize error reporting for URI parsing/formatting problems (Daniel P. Berrange),<br/>
      s/xmlURIPtr/virURIPtr/ in virURIFormat impl (Daniel P. Berrange),<br/>
      Use virURIFree instead of xmlFreeURI (Daniel P. Berrange),<br/>
      Add test case for virURIPtr classs (Daniel P. Berrange),<br/>
      python: add virDomainGetCPUStats python binding API (Guannan Ren),<br/>
      qemu: Make autodestroy utilize connection close callbacks (Jiri Denemark),<br/>
      qemu: Add connection close callbacks (Jiri Denemark),<br/>
      qemu: Add support for domain cleanup callbacks (Jiri Denemark),<br/>
      python: always include config.h first (Eric Blake),<br/>
      Cpu mapping cleanup (Martin Kletzander),<br/>
      virsh: trim aliases from -h output (Eric Blake),<br/>
      Add support for forcing a private network namespace for LXC guests (Daniel P. Berrange),<br/>
      Emit graphics events when a SPICE client connects/disconnects (Laine Stump),<br/>
      numad: Fix typo and warning (Osier Yang),<br/>
      Add container_uuid env variable to LXC guests (Daniel P. Berrange),<br/>
      Allow overriding default URI in config file (Daniel P. Berrange),<br/>
      virsh: A bit smarter attach-disk (Osier Yang),<br/>
      qemu: Use scsi-block for lun passthrough instead of scsi-disk (Osier Yang),<br/>
      cpu: Add cpu definition for Intel Sandy Bridge cpu type (Peter Krempa),<br/>
      Added support for AMD Bulldozer CPU (Martin Kletzander),<br/>
      graphics: Cleanup port policy (Michal Privoznik),<br/>
      cpustats: report user and sys times (Eric Blake),<br/>
      qemuxml2argvtest: Pass some additional flags to graphics-spice-agentmouse (Michal Privoznik),<br/>
      qemu: spice agent-mouse support (Peng Zhou),<br/>
      virsh: Use option alias for outmoded "--persistent" (Osier Yang),<br/>
      util: consolidate duplicated error messages in pci.c (Laine Stump),<br/>
      qemu: support persistent hotplug of &lt;hostdev&gt; devices (Laine Stump),<br/>
      util: standardize return from functions calling virNetlinkCommand (Laine Stump),<br/>
      util: make virDomainLeaseDefFree global (Laine Stump),<br/>
      util: consolidate duplicated error messages in virnetlink.c (Laine Stump),<br/>
      util: log error on OOM in virNetDevOpenvswitchAddPort (Laine Stump),<br/>
      Attach vm-id to Open vSwitch interfaces. (Ansis Atteka),<br/>
      util: whitespace change to virNetDevOpenvswitchAddPort (Laine Stump),<br/>
      util: add stub pciConfigAddressToSysfsFile for non-linux platforms (Laine Stump),<br/>
      rpc: generalize solution for VPATH builds (Eric Blake),<br/>
      xml: Clean up schemas to use shared data types instead of local (Peter Krempa),<br/>
      qemu: Don't parse device twice in attach/detach (Michal Privoznik),<br/>
      virsh: improve memory unit parsing (Eric Blake),<br/>
      virsh: improve storage unit parsing (Eric Blake),<br/>
      virsh: add command aliases, and rename nodedev-detach (Eric Blake),<br/>
      virsh: use option aliases (Eric Blake),<br/>
      virsh: add option aliases (Eric Blake),<br/>
      xml: allow scaled memory on input (Eric Blake),<br/>
      xml: use better types for memory values (Eric Blake),<br/>
      xml: use long long internally, to centralize overflow checks (Eric Blake),<br/>
      xml: drop unenforced minimum memory limit from RNG (Eric Blake),<br/>
      storage: support more scaling suffixes (Eric Blake),<br/>
      xml: output memory unit for clarity (Eric Blake),<br/>
      xml: share 'unit' in RNG (Eric Blake),<br/>
      util: new function for scaling numbers (Eric Blake),<br/>
      api: add overflow error (Eric Blake),<br/>
      cpu-stats command shows cpu statistics information of a domain. (KAMEZAWA Hiroyuki),<br/>
      qemu driver for virDomainGetCPUstats using cpuacct cgroup. (KAMEZAWA Hiroyuki),<br/>
      add nodeGetCPUmap() for getting available CPU IDs in a cpumap. (KAMEZAWA Hiroyuki),<br/>
      qemu: install port profile and mac address on netdev hostdevs (Roopa Prabhu),<br/>
      util: Changes to support portprofiles for hostdevs (Roopa Prabhu),<br/>
      util: support functions for mac/portprofile associations on hostdev (Roopa Prabhu),<br/>
      util: two new pci util functions (Roopa Prabhu),<br/>
      qemu: support type=hostdev network device live hotplug attach/detach (Laine Stump),<br/>
      qemu: use virDomainNetRemove instead of inline code (Laine Stump),<br/>
      conf: change virDomainNetRemove from static to global (Laine Stump),<br/>
      conf: parse/format type='hostdev' network interfaces (Laine Stump),<br/>
      qemu: refactor hotplug detach of hostdevs (Laine Stump),<br/>
      qemu: re-order functions in qemu_hotplug.c (Laine Stump),<br/>
      conf: hostdev utility functions (Laine Stump),<br/>
      conf: put subsys part of virDomainHostdevDef into its own struct (Laine Stump),<br/>
      conf: give each hostdevdef a parent pointer (Laine Stump),<br/>
      conf: HostdevDef parse/format helper functions (Laine Stump),<br/>
      conf: make hostdev info a separate object (Laine Stump),<br/>
      conf: add device pointer to args of virDomainDeviceInfoIterate callback (Laine Stump),<br/>
      qemu: rename virDomainDeviceInfoPtr variables to avoid confusion (Laine Stump),<br/>
      conf: reorder static functions in domain_conf.c (Laine Stump),<br/>
      conf: relocate virDomainDeviceDef and virDomainHostdevDef (Laine Stump),<br/>
      conf: add missing device types to virDomainDevice(Type|Def) (Laine Stump),<br/>
      blockResize: add flag for bytes (Eric Blake),<br/>
      qemu: Shared or readonly disks are always safe wrt migration (Jiri Denemark),<br/>
      libvirt-guests: Add parallel startup and shutdown of guests (Peter Krempa),<br/>
      Fix type and add missed comment for diskChange callback (Osier Yang),<br/>
      cpu: Add new flag supported by qemu to the cpu definition (Peter Krempa),<br/>
      util: combine bools in virNetDevTapCreateInBridgePort into flags (Laine Stump),<br/>
      util: centralize tap device MAC address 1st byte "0xFE" modification (Ansis Atteka),<br/>
      build: use correct type for pid and similar types (Eric Blake),<br/>
      build: prohibit cross-inclusion (Eric Blake),<br/>
      virsh: expose partial pull (Eric Blake),<br/>
      qemu: pass block pull backing file to monitor (Eric Blake),<br/>
      qemu: require json for block jobs (Eric Blake),<br/>
      fix alphabetical order of virNetlink functions in symbol file (Laine Stump),<br/>
      build: update to latest gnulib (Eric Blake),<br/>
      Add de-association handling to macvlan code (D. Herrendoerfer),<br/>
      util: Add netlink event handling to virnetlink.c (D. Herrendoerfer),<br/>
      Support for cpu64-rhel* qemu cpu models (Martin Kletzander),<br/>
      libvirt-guests: Check if URI is reachable before launching commands (Peter Krempa),<br/>
      libvirt-guests: Don't try to do a managed-save of transient guests (Peter Krempa),<br/>
      libvirt-guests: Add documentation and clean up to use virsh's improved list (Peter Krempa),<br/>
      qemu: Add pre-migration hook (Jiri Denemark),<br/>
      hooks: Add support for capturing hook output (Jiri Denemark),<br/>
      util: fix a typo (Alex Jia),<br/>
      storage: fix a typo (Alex Jia),<br/>
      Do not include binaries in EXTRA_DIST (Daniel Veillard),<br/>
      virsh: New command cmdChangeMedia (Osier Yang),<br/>
      virsh: Use vshFindDisk and vshPrepareDiskXML in cmdDetachDisk (Osier Yang),<br/>
      virsh: Two new helper functions for disk device changes (Osier Yang),<br/>
      tests: Add tests for virtio-scsi and ibmvscsi controllers (Osier Yang),<br/>
      qemu: Build command line for the new address format (Osier Yang),<br/>
      qemu: New cap flag to indicate if channel is supported by scsi-disk (Osier Yang),<br/>
      conf: Introduce new attribute for device address format (Osier Yang),<br/>
      conf: Add helper function to look up disk controller model (Osier Yang),<br/>
      qemu: add virtio-scsi controller model (Paolo Bonzini),<br/>
      qemu: add ibmvscsi controller model (Paolo Bonzini),<br/>
      qemu: Add ability to abort existing console while creating new one (Peter Krempa),<br/>
      util: Add helpers for safe domain console operations (Peter Krempa),<br/>
      fdstream: Add internal callback on stream close (Peter Krempa),<br/>
      fdstream: Emit stream abort callback even if poll() doesnt. (Peter Krempa),<br/>
      virsh: add support for VIR_DOMAIN_CONSOLE_* flags (Peter Krempa),<br/>
      Add flags for virDomainOpenConsole (Peter Krempa),<br/>
      pidfile: Make checking binary path in virPidFileRead optional (Peter Krempa),<br/>
      qemu: Implement virDomainPMWakeup API (Michal Privoznik),<br/>
      virsh: Expose virDomainPMWakeup (Michal Privoznik),<br/>
      Fixed URI parsing (Martin Kletzander),<br/>
      Workaround python header file insanity (Daniel P. Berrange),<br/>
      Improve error reporting when virsh console is run without a TTY (Daniel P. Berrange),<br/>
      Error out when using SPICE TLS with spice_tls=0 (Christophe Fergeau),<br/>
      vmx: Better Workstation vmx handling (Jean-Baptiste Rouault),<br/>
      qemu: nicer error message on failed graceful destroy (Eric Blake),<br/>
      qemu: Forbid migration with cache != none (Jiri Denemark),<br/>
      Introduce virStorageFileIsClusterFS (Jiri Denemark),<br/>
      virsh: Add --unsafe option to migrate command (Jiri Denemark),<br/>
      Add support for unsafe migration (Jiri Denemark),<br/>
      configure: Define program name if not found (Michal Privoznik),<br/>
      virsh: Enhance list command to ease creation of shell scripts (Peter Krempa),<br/>
      vmware: implement domainXMLFromNative (Jean-Baptiste Rouault),<br/>
      esx: Correctly disable HTTP Expect header usage of libcurl (Matthias Bolte),<br/>
      caps: Improve error if passed an unknown arch (Cole Robinson),<br/>
      spec: use ix86 macros (Peter Robinson),<br/>
      nwfilter: improved logging during driver initialization (Stefan Berger),<br/>
      storage: Allow runtime detection of scrub (Michal Privoznik),<br/>
      Fix build with polkit0 (Jim Fehlig),<br/>
      python: Expose virDomain{G,S}etInterfaceParameters APIs in python binding (Alex Jia),<br/>
      conf: rename virDomainNetGetActualDirectVirtPortProfile (Laine Stump),<br/>
      qemu: increase the timeout before sending SIGKILL to qemu process (Laine Stump),<br/>
      qemu: drop driver lock while trying to terminate qemu process (Laine Stump),<br/>
      qemu: Implement DomainPMSuspendForDuration (Michal Privoznik),<br/>
      qemu: Set capabilities based on supported monitor commands (Michal Privoznik),<br/>
      Install API XML desc to a standard location (Daniel P. Berrange),<br/>
      qemu: make block io tuning smarter (Eric Blake)<br/>
      </li>

      <li>Cleanups:<br/>
      Fix typos and spacing in messages. (Yuri Chornoivan),<br/>
      qemu: eliminate nested switch, simplify code (Laine Stump),<br/>
      Fix typo in previous patch (Daniel P. Berrange),<br/>
      build: drop obsolete qparams test (Eric Blake),<br/>
      build: drop a painfully long gnulib test (Eric Blake),<br/>
      Removed more AMD-specific features from cpu64-rhel* models (Martin Kletzander),<br/>
      conf: eliminate redundant VIR_ALLOC of 1st element of network DNS hosts. (Laine Stump),<br/>
      remove daemon/probes.h from .gitignore (Laine Stump),<br/>
      sanlock: Fix condition left crippled while debugging (Peter Krempa),<br/>
      qemu: Fix indention (Osier Yang),<br/>
      daemon: Remove deprecated HAL from init script dependencies (Peter Krempa),<br/>
      util: remove unneeded #include in virrandom.c (Laine Stump),<br/>
      util: wrap virnetlink.c to 80 columns (Laine Stump),<br/>
      Fixed service handling in specfile (Martin Kletzander)<br/>
      </li>
    </ul>

    <h3>0.9.10: Feb 13 2012</h3>
    <ul>
      <li>Features:<br/>
      Add support for sVirt in the LXC driver (Daniel P. Berrange),<br/>
      block rebase: add new API virDomainBlockRebase (Eric Blake),<br/>
      API: Add api to set and get domain metadata (Peter Krempa),<br/>
      virDomainGetDiskErrors public API (Jiri Denemark),<br/>
      conf: add rawio attribute to disk element of domain XML (Taku Izumi),<br/>
      Add new public API virDomainGetCPUStats() (KAMEZAWA Hiroyuki),<br/>
      Introduce virDomainPMSuspendForDuration API (Michal Privoznik),<br/>
      resize: add virStorageVolResize() API (Zeeshan Ali (Khattak)),<br/>
      Add a virt-host-validate command to sanity check HV config (Daniel P. Berrange),<br/>
      Add new virDomainShutdownFlags API (Daniel P. Berrange),<br/>
      QEMU guest agent support (Daniel P. Berrange)<br/>
      </li>

      <li>Documentation:<br/>
      fix typo in python bindings (Eric Blake),<br/>
      conf: small changes to comments in virDomainDeviceInfo (Laine Stump),<br/>
      Clarify the purpose of domxml-from-native (Dave Allan),<br/>
      Enhance documentation of the old-style boot configuration (Jiri Denemark),<br/>
      virterror.c: Fix several spelling mistakes (Philipp Hahn),<br/>
      Add detail to documentation on storage pools and volumes. (Dave Allan),<br/>
      fill out rawio description (Laine Stump),<br/>
      XenXs: Update documentation (Philipp Hahn),<br/>
      reorder public header (Eric Blake),<br/>
      tweak recent suspend API additions (Eric Blake),<br/>
      Add missing docs for &lt;viridian/&gt; feature flag (Daniel P. Berrange),<br/>
      fix virsh man page (Eric Blake),<br/>
      fix a few small typos in formatdomain.html.in (Laine Stump),<br/>
      src/datatypes.h: fix typo (Alon Levy),<br/>
      Clarify semantics of virDomainMigrate{,ToURI}2 (Jiri Denemark),<br/>
      Add missed RNG schema for interface (Osier Yang),<br/>
      Add documentation new ways to access members of variables (Stefan Berger),<br/>
      virsh: improve doMigrate function docs (Alex Jia),<br/>
      standardize description of flags (Eric Blake),<br/>
      Document Android application using libvirt (Michal Privoznik)<br/>
      </li>

      <li>Portability:<br/>
      virpidfile: replace fopen/fwrite/fscanf with more portable version (Marc-André Lureau),<br/>
      util: Do not use PRIx64 macro (Osier Yang),<br/>
      Replace truncate() with ftruncate() (Daniel P. Berrange),<br/>
      build: avoid gcc 4.7 warning about inlines (Eric Blake),<br/>
      lxc: Fix build with AppArmor (Jiri Denemark),<br/>
      Update gnulib to fix mingw64 compilation errors (Marc-André Lureau),<br/>
      tests: virnettlscontexttest needs gnutls-2.6.0 (Philipp Hahn),<br/>
      qemu: Silent bogus warning about unitialized variable (Jiri Denemark),<br/>
      build: fix text regression (Eric Blake),<br/>
      Add virt-host-validate.1 to Mingw32 RPM spec file list (Daniel P. Berrange),<br/>
      build: fix missing include (Eric Blake),<br/>
      qemu: support qmp on RHEL/CentOS qemu (Eric Blake),<br/>
      util: Include stdint.h because of uint32_t (Michal Privoznik),<br/>
      Cast pointer to int using intptr_t (Marc-André Lureau),<br/>
      build: fix header order on mingw (Eric Blake),<br/>
      errcode is typedef by mingw, rename an argument name (Marc-André Lureau),<br/>
      Add missing virGetGroupName() (Marc-André Lureau),<br/>
      build: skip lxc with too-old glibc (Eric Blake),<br/>
      Remove dmidecode dependancy outside PC arches (Daniel Veillard),<br/>
      build: fix bootstrap on fresh clone (Eric Blake),<br/>
      tests: Add qemuxml2argv tests for PPC64 pseries machine (Michael Ellerman),<br/>
      tests: Teach qemuxml2argvtest about spapr-vio addresses (Michael Ellerman),<br/>
      Disable netcf if building without libvirtd (Daniel P. Berrange),<br/>
      build: fix build on mingw with netcf available (Eric Blake),<br/>
      build: avoid spurious compiler warning (Eric Blake)<br/>
      </li>

      <li>Bug Fixes:<br/>
      rpc: Plug memory leaks on doRemoteOpen() failure path (Alex Jia),<br/>
      GetCPUStats: fix overflow test (Lai Jiangshan),<br/>
      python: Correct arguments number for migrateSetMaxSpeed (Osier Yang),<br/>
      qemu: fix persistent setting of blkiodevice weights (Eric Blake),<br/>
      qemu: Fix memory leak when building -cpu argument (Jiri Denemark),<br/>
      security: Driver 'none' cannot create confined guests (Jiri Denemark),<br/>
      seclabel: Do not output relabel attribute for type 'none' (Jiri Denemark),<br/>
      virsh: Plug memory leak on cmdDesc (Alex Jia),<br/>
      virsh: Do not check the input XML at virsh layer for cmdDetachDevice (Osier Yang),<br/>
      On systems with dmidecode version 2.10 or older, (Prerna Saxena),<br/>
      storage: Don't unsparsify images when cloning (Cole Robinson),<br/>
      build: don't require avahi during install (Laine Stump),<br/>
      pyhton: Don't link against libvirt_util.la (Michal Privoznik),<br/>
      xen-xm: SIGSEGV in xenXMDomainDefineXML: filename (Philipp Hahn),<br/>
      xen-xm: fix data loss in domain edit (Philipp Hahn),<br/>
      virsh: Fix resource leak while listing inactive domains with titles (Peter Krempa),<br/>
      xen_xm: Fix SIGSEGV in xenXMDomainDefineXML (Philipp Hahn),<br/>
      qemu: Fix seamless spice migration (Jiri Denemark),<br/>
      apparmor: Add missing comma (Jiri Denemark),<br/>
      virsh: Avoid invalid read of size errors (Alex Jia),<br/>
      qemu: eliminate "Ignoring open failure" when using root-squash NFS (Laine Stump),<br/>
      conf: Plug memory on virDomainDiskDefParseXML (Alex Jia),<br/>
      virsh: Plug memory leak on cmdUndefine (Alex Jia),<br/>
      network: fix testsuite regression (Eric Blake),<br/>
      network: Avoid memory leaks on networkBuildDnsmasqArgv (Alex Jia),<br/>
      python: correct a copy-paste error (Alex Jia),<br/>
      qemu: Don't jump to endjob if no job was even started (Michal Privoznik),<br/>
      qemu: fix my typo at commit 74e034964c32edb1732d0ff7642f3977f3587d72 (Taku Izumi),<br/>
      qemu: Fix segfault in qemuMonitorTextGetBlockInfo (Hendrik Schwartke),<br/>
      tests: fix reversed comparisons (Eric Blake),<br/>
      qemu: avoid double free of qemu help output (Eric Blake),<br/>
      apparmor: Fix use of uninitialized random_data (Jiri Denemark),<br/>
      storage: Fix any VolLookupByPath if we have an empty logical pool (Cole Robinson),<br/>
      Don't bind mount onto a char device for /dev/ptmx in LXC (Daniel P. Berrange),<br/>
      xen: Don't crash when we fail to init caps (Guido Günther),<br/>
      xen: properly report out of memory when hvm_type is too small (Guido Günther),<br/>
      threads: check for failure to set thread-local value (Eric Blake),<br/>
      Fix rpc generator to anchor matches for method names (Daniel P. Berrange),<br/>
      Fix startup of LXC containers with filesystems containing symlinks (Daniel P. Berrange),<br/>
      qemu: Prohibit reattaching node device if it is in use (Osier Yang),<br/>
      qemu: Don't break domain with 0:0:2.0 assigned to anything but VGA (Jiri Denemark),<br/>
      Fixed dumpxml of &lt;iotune&gt; parameters (Martin Kletzander),<br/>
      nwfilter: fix typing error in filter (Stefan Berger),<br/>
      events: Return the correct number of registered events (Adam Litke),<br/>
      uuid: fix off-by-one (Eric Blake),<br/>
      build: fix virsh reformat fallout (Eric Blake),<br/>
      stream: Check for stream EOF (Michal Privoznik),<br/>
      Do not generate security_model when fs driver is anything but 'path' (Deepak C Shetty),<br/>
      qemu: check for kvm availability before starting kvm guests (Laine Stump),<br/>
      qemu: fix a typo on qemuDomainSetBlkioParameters (Alex Jia),<br/>
      config: report error when script given for inappropriate interface type (Laine Stump)<br/>
      </li>

      <li>Improvements:<br/>
      python: make other APIs share common {get, set}PyVirTypedParameter (Guannan Ren),<br/>
      npiv: Auto-generate WWN if it's not specified (Osier Yang),<br/>
      Remove single quotes from audit records (Marcelo Cerri),<br/>
      domain: add implicit USB controller (Marc-André Lureau),<br/>
      python: refactoring virTypedParameter conversion for NUMA tuning APIs (Guannan Ren),<br/>
      qemu: make blkiodevice weights easier to read (Eric Blake),<br/>
      sysinfo: simplify function signature (Eric Blake),<br/>
      Populate /dev/std{in,out,err} symlinks in LXC containers (Daniel P. Berrange),<br/>
      Update symbols file for virFileDirectFd/virFileWrapperFd rename (Daniel P. Berrange),<br/>
      virsh: Fix flag semantics and docs for "desc" command (Peter Krempa),<br/>
      qemu: Always use iohelper for domain save (Jiri Denemark),<br/>
      qemu: Always use iohelper for dumping domain core (Jiri Denemark),<br/>
      util: Generalize virFileDirectFd (Jiri Denemark),<br/>
      Allow polkit auth for VNC and SSH users (Cole Robinson),<br/>
      seclabel: make code and RNG match (Eric Blake),<br/>
      maint: Add test output files to .gitignore (Peter Krempa),<br/>
      tests: Fix build with -Werror (Jiri Denemark),<br/>
      maint: consolidate several .gitignore files (Eric Blake),<br/>
      util: refactor virFileOpenAs (Laine Stump),<br/>
      util: rename netlink.[ch] to virnetlink.[ch] (D. Herrendoerfer),<br/>
      virsh: add --graceful switch to destroy command (Laine Stump),<br/>
      qemu: new GRACEFUL flag for virDomainDestroy w/ QEMU support (Laine Stump),<br/>
      Added missing memory reporting into python bindings (Martin Kletzander),<br/>
      python: use libvirt_util to avoid raw free (Eric Blake),<br/>
      build: expand rule to cover testsuite (Eric Blake),<br/>
      build: prohibit raw malloc and free (Eric Blake),<br/>
      build: clean up CPPFLAGS/INCLUDES usage (Eric Blake),<br/>
      command: allow merging stdout and stderr in string capture (Eric Blake),<br/>
      maint: prune duplicate listings in AUTHORS (Eric Blake),<br/>
      virsh: extension of virsh attach-disk for rawio (Taku Izumi),<br/>
      Fixed connection definition for non-SELinux builds (Martin Kletzander),<br/>
      Added RSS reporting (Martin Kletzander),<br/>
      Added RSS information gathering into qemudGetProcessInfo (Martin Kletzander),<br/>
      Set a security context on /dev and /dev/pts mounts (Daniel P. Berrange),<br/>
      Add two new security label types (Daniel P. Berrange),<br/>
      Re-add domain device seclabel parsing / formatting (Daniel P. Berrange),<br/>
      Revert changes to sec label parsing (Daniel P. Berrange),<br/>
      tests: dynamically replace dnsmasq path (Philipp Hahn),<br/>
      xen_xs: name xendConfigVersion magic numbers (Philipp Hahn),<br/>
      block rebase: initial qemu implementation (Eric Blake),<br/>
      block rebase: wire up remote protocol (Eric Blake),<br/>
      qemu: Add support for virDomainGetMetadata and virDomainSetMetadata (Peter Krempa),<br/>
      virsh: Add support for modifying domain description and titles (Peter Krempa),<br/>
      xml: Add element &lt;title&gt; to allow short description of domains (Peter Krempa),<br/>
      build: add missing virStorageFileResize to libvirt_private.syms (Laine Stump),<br/>
      build: add missing virCommandAddCap to libvirt_private.syms (Laine Stump),<br/>
      daemon: Allow overriding NOFILES ulimit for the daemon as well (Michal Privoznik),<br/>
      python: Add binding for virDomainGetDiskErrors (Jiri Denemark),<br/>
      virsh: Implement domblkerror command (Jiri Denemark),<br/>
      qemu: Implement virDomainGetDiskErrors (Jiri Denemark),<br/>
      Remote protocol for virDomainGetDiskErrors (Jiri Denemark),<br/>
      command: Fix ATTRIBUTE_UNUSED on virSetCapabilities (Michal Privoznik),<br/>
      simplify block of codes (Alex Jia),<br/>
      qemu: make qemu processes to retain rawio capability (Taku Izumi),<br/>
      util: extend virExecWithHook() (Taku Izumi),<br/>
      util: add functions to keep capabilities (Taku Izumi),<br/>
      Implement virStorageVolResize() for FS backend (Zeeshan Ali (Khattak)),<br/>
      resize: slightly alter signature (Eric Blake),<br/>
      qemu: add "romfile" support to specify device boot ROM (Laine Stump),<br/>
      qemu: (and conf) support rombar for network devices (Laine Stump),<br/>
      conf: relocate rombar and boot order parse/format (Laine Stump),<br/>
      conf: put all guest-related HostdevDef data in one object (Laine Stump),<br/>
      xen: Don't add &lt;console&gt; to xml for dom0 (Cole Robinson),<br/>
      remote handler for virDomainGetCPUStats() (KAMEZAWA Hiroyuki),<br/>
      virsh: Expose new virDomainPMSuspendForDuration API (Michal Privoznik),<br/>
      resize: implement remote protocol for virStorageVolResize() (Zeeshan Ali (Khattak)),<br/>
      Return more error output if policykit auth fails. (Cole Robinson),<br/>
      Add new error code VIR_ERROR_AUTH_CANCELLED (Cole Robinson),<br/>
      Move virEmitXMLWarning into xml.h (Daniel P. Berrange),<br/>
      Move virMacAddrXXX functions to src/util/virmacaddr.[ch] (Daniel P. Berrange),<br/>
      Rename virXXXXMacAddr to virMacAddrXXX (Daniel P. Berrange),<br/>
      qemu: parse and create -cpu ...,-kvmclock (Paolo Bonzini),<br/>
      conf: add kvmclock timer (Paolo Bonzini),<br/>
      qemu: do not create useless &lt;cpu&gt; element (Paolo Bonzini),<br/>
      qemu: get arch name from &lt;cpu&gt; element (Paolo Bonzini),<br/>
      qemu: detect arch correctly for KVM (Paolo Bonzini),<br/>
      x86: add kvm32 and kvm64, update qemu64 (Paolo Bonzini),<br/>
      qemu: parse -enable-kvm (Paolo Bonzini),<br/>
      qemu: require qmp on new enough qemu (Eric Blake),<br/>
      nwfilter: Rebuild filters only if new filter is different than current (Stefan Berger),<br/>
      nwfilter: Force instantiation of filters upon driver reload (Stefan Berger),<br/>
      qemu: Refactor qemuMonitorGetBlockInfo (Jiri Denemark),<br/>
      Update VIRT_CONTROL audit record with pid. (Marcelo Cerri),<br/>
      build: allow for 64-bit pid in daemon (Eric Blake),<br/>
      daemon: convert virRun to virCommand (Eric Blake),<br/>
      hash: minor touchups (Eric Blake),<br/>
      Replace hashing algorithm with murmurhash (Daniel P. Berrange),<br/>
      Rename  hash.h and hash.c to virhash.h and virhash.c (Daniel P. Berrange),<br/>
      Convert various virHash functions to use size_t / uint32 (Daniel P. Berrange),<br/>
      Introduce new API for generating random numbers (Daniel P. Berrange),<br/>
      schema: Relax schema for domain name (Peter Krempa),<br/>
      storage: Support different wiping algorithms (Michal Privoznik),<br/>
      lxc: export container=lxc-libvirt for systemd (Eric Blake),<br/>
      Add virFileTouch for creating empty files (Daniel P. Berrange),<br/>
      virsh: Expose new VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE flag (Michal Privoznik),<br/>
      snapshots: Introduce VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE flag (Michal Privoznik),<br/>
      qemu_agent: Create file system freeze and thaw functions (Michal Privoznik),<br/>
      qemu: Emit bootindex even for direct boot (Jiri Denemark),<br/>
      metadata: group metadata next to description (Eric Blake),<br/>
      build: simplify xmlFreeNode usage (Eric Blake),<br/>
      Allow custom metadata in domain configuration XML (Zeeshan Ali (Khattak)),<br/>
      virCommandProcessIO(): make poll() usage more robust (Laszlo Ersek),<br/>
      Allow choice of shutdown method via virsh (Daniel P. Berrange),<br/>
      Wire up QEMU agent to reboot/shutdown APIs (Daniel P. Berrange),<br/>
      hashtest: Initialize variable in virHashEqual test (Michal Privoznik),<br/>
      Add test case for virHashEqual function (Stefan Berger),<br/>
      Compare two hash tables for equality (Stefan Berger),<br/>
      virsh: let domif-{get,set}link take target name (Taku Izumi),<br/>
      maint: cleanup qemu capabilities (Eric Blake),<br/>
      maint: enforce use of _LAST marker (Eric Blake),<br/>
      API: make declaration of _LAST enum values conditional (Eric Blake),<br/>
      error: drop old-style error reporting (Eric Blake),<br/>
      util: use new virTypedParameter helpers (Eric Blake),<br/>
      util: add new file for virTypedParameter utils (Eric Blake),<br/>
      lxc: use live/config helper (Eric Blake),<br/>
      build: silence some compiler warnings from gnulib (Eric Blake),<br/>
      Rename APIs for fetching UNIX socket credentials (Daniel P. Berrange),<br/>
      Add virGetGroupName to convert from GID to group name (Daniel P. Berrange),<br/>
      Remove duplicate call to virNetSASLSessionGetIdentity (Daniel P. Berrange),<br/>
      Also retrieve GID from SO_PEERCRED (Daniel P. Berrange),<br/>
      Added capability checking for block &lt;iotune&gt; setting. (Martin Kletzander),<br/>
      qemu: Introduce inactive PCI device list (Osier Yang),<br/>
      Permission change for systemtap examples. (Martin Kletzander),<br/>
      Add new attribute wrpolicy to &lt;driver&gt; element (Deepak C Shetty),<br/>
      tests: avoid dirname in tests (Eric Blake),<br/>
      qemu: Add support for host CPU modes (Jiri Denemark),<br/>
      Taint domains configured with cpu mode=host-passthrough (Jiri Denemark),<br/>
      cpu: Update guest CPU in host-* mode (Jiri Denemark),<br/>
      Add support for cpu mode attribute (Jiri Denemark),<br/>
      cpu: Optionally forbid fallback CPU models (Jiri Denemark),<br/>
      tests: Print XML file name in verbose CPU test (Jiri Denemark),<br/>
      docs: Expose alias tag in domain RNG schema (Osier Yang),<br/>
      docs: Add readonly to filesystem RNG schema (Osier Yang),<br/>
      conf: Remove do-nothing validation functions (Michael Ellerman),<br/>
      Make drive unit attribute optional in the XML schema (Michael Ellerman),<br/>
      virsh domiflist: change output (Taku Izumi),<br/>
      export virNetDevGetVirtualFunctions as a private symbol (Paolo Bonzini),<br/>
      virsh: Two new fields for command domblklist (Osier Yang),<br/>
      qemu: Support copy on read for disk (Osier Yang),<br/>
      Added check for maximum number of vcpus exceeding topology limit (Martin Kletzander),<br/>
      build: update to latest gnulib (Eric Blake),<br/>
      Rsync keymaps.csv file with GTK-VNC (Daniel P. Berrange),<br/>
      Re-write LXC controller end-of-file I/O handling yet again (Daniel P. Berrange),<br/>
      Allow 10 chars for domain IDs &amp; 30 chars for names in virsh list (Daniel P. Berrange),<br/>
      virsh: New command print summary of all virtual interfaces (Osier Yang),<br/>
      Added new option to virsh net-dumpxml called --inactive (Shradha Shah),<br/>
      Functionality to implicitly get interface pool from SR-IOV PF. (Shradha Shah),<br/>
      Adding the element pf to network xml. (Shradha Shah),<br/>
      Added Function virNetDevGetVirtualFunctions (Shradha Shah),<br/>
      Added function pciSysfsFile to enable access to the PCI SYSFS files. (Shradha Shah),<br/>
      Add test cases for new ways to access variables in filters (Stefan Berger),<br/>
      Address side effects of accessing vars via index (Stefan Berger),<br/>
      Add access to elements of variables via index (Stefan Berger),<br/>
      Introduce possibility to have an iterator per variable (Stefan Berger),<br/>
      Optimize the elements the iterator visits. (Stefan Berger),<br/>
      apparmor: Mark pid parameter as unused (Jiri Denemark),<br/>
      Change security driver APIs to use virDomainDefPtr instead of virDomainObjPtr (Daniel P. Berrange),<br/>
      snapshot: allow reuse of existing files in disk snapshot (Eric Blake),<br/>
      PolicyKit: Check auth before asking client to obtain it (Jim Fehlig),<br/>
      qemu: add new disk device='lun' for bus='virtio' &amp; type='block' (Laine Stump),<br/>
      qemu: add capabilities flags related to SG_IO (Laine Stump),<br/>
      qemu: one more client to live/config helper (Eric Blake)<br/>
      </li>

      <li>Cleanups:<br/>
      python: drop unused function (Eric Blake),<br/>
      python: drop redundant function (Eric Blake),<br/>
      Replace TAB with white spaces (Osier Yang),<br/>
      qemu: Clenup qemuDomainSetInterfaceParameters (Michal Privoznik),<br/>
      conf: remove duplicate call to VIR_FREE(info-&gt;alias) (Laine Stump),<br/>
      xml: fix struct typos (Eric Blake),<br/>
      Remove tabs from libvirt_public.syms &amp; enforce it (Daniel P. Berrange)<br/>
      </li>
    </ul>

    <h3>0.9.9: Jan 07 2012</h3>
    <ul>
      <li>Features:<br/>
      Add new API virDomain{S,G}etInterfaceParameters (Hu Tao),<br/>
      Add new API virDomain{G,S}etNumaParameters (Hu Tao),<br/>
      Add support for ppc64 qemu (Prerna Saxena, Bharata B Rao, Michael Ellerman),<br/>
      Support Xen domctl v8 (Jim Fehlig)<br/>
      </li>

      <li>Documentation:<br/>
      Fix typos in messages. (Yuri Chornoivan),<br/>
      docs: re-fix stray / (Eric Blake),<br/>
      virsh: move version command to host group (Lai Jiangshan),<br/>
      docs: Move 'echo' command description into the generic commands section (Satoru SATOH),<br/>
      docs: Move 'send-key' command description into the domain commands section (Satoru SATOH),<br/>
      docs: remove stray / (Eric Blake),<br/>
      docs: fix missing / in xml examples (Eric Blake),<br/>
      docs: improve virsh domxml-*-native command docs (Alex Jia),<br/>
      docs: document &lt;qemu:commandline&gt; xml (Eric Blake),<br/>
      Fix typo in storage pool documentation (Christophe Fergeau),<br/>
      docs: tweak 'virsh edit' wording (Eric Blake),<br/>
      docs: document &lt;address&gt; elements in one place (Eric Blake),<br/>
      threads: Document spurious wakeups on virCondWait (Michal Privoznik)<br/>
      </li>

      <li>Portability:<br/>
      build: fix mingw virCommand build (Eric Blake),<br/>
      tests: avoid test failure on rawhide gnutls (Eric Blake),<br/>
      build: drop check for ANSI compiler (Eric Blake),<br/>
      Fix build on s390(x) and other stange arches (Daniel Veillard),<br/>
      Require avahi as an rpm dependancy (Daniel Veillard),<br/>
      Disable python explicitly in mingw32 autobuild (Daniel P. Berrange),<br/>
      build: disable dtrace on non-Linux builds (Eric Blake),<br/>
      build: let autobuild check more code (Eric Blake),<br/>
      maint: allow bootstrap in a sandbox (Eric Blake)<br/>
      </li>

      <li>Bug Fixes:<br/>
      qemu: Avoid memory leaks on qemuParseRBDString (Alex Jia),<br/>
      qemu: fix a bug in numatune (Hu Tao),<br/>
      qemu: fix use-after-free regression (Eric Blake),<br/>
      seclabel: fix regression in libvirtd restart (Eric Blake),<br/>
      command: Discard FD_SETSIZE limit for opened files (Michal Privoznik),<br/>
      Fix xenstore serial console path for HVM guests (Jim Fehlig),<br/>
      schemas: Allow '.' in CPU feature name (Jiri Denemark),<br/>
      virCommand: Properly handle POLLHUP (Michal Privoznik),<br/>
      virCPUDefCopy forgot to copy NUMA topology (Jiri Denemark),<br/>
      qemu: fix block stat naming (Eric Blake),<br/>
      domiftune: clean up previous patches (Eric Blake),<br/>
      virsh: Fix checking for reconnect conditions (Peter Krempa),<br/>
      qemu: Fix bandwidth memory leak on failure (Alex Jia),<br/>
      qemu: fix blkio memory leak on failure (Eric Blake),<br/>
      remove a static limit on max domains in python bindings (Daniel Veillard),<br/>
      python: Fix problems of virDomain{Set, Get}BlockIoTune bindings (Alex Jia),<br/>
      qemu: fix inf-loop in blkio parameters (Eric Blake),<br/>
      qemu: Keep list of USB devices attached to domains (Michal Privoznik),<br/>
      qemu: Release the lock on domobj if fails on finding the disk path (Osier Yang),<br/>
      virsh: plug mem leaks in domxml-*-native (Alex Jia),<br/>
      console: plug memory leaks (Alex Jia),<br/>
      rpc: handle param_int, plug memory leaks (Eric Blake),<br/>
      python: plug memory leak on libvirt_virConnectOpenAuth (Alex Jia),<br/>
      Only add the timer when a callback is registered (Daniel P. Berrange),<br/>
      qemu: detect truncated file as invalid save image (Eric Blake),<br/>
      qemu: Don't drop hostdev config until security label restore (Michal Privoznik),<br/>
      Fix default migration speed in qemu driver (Jim Fehlig),<br/>
      qemu: Fix race between async and query jobs (Jiri Denemark),<br/>
      qemu: Do not free the device from activePciHostdevs if it's in use (Osier Yang),<br/>
      qemu: Honor the original properties of PCI device when detaching (Osier Yang),<br/>
      spec: fix inverted logic on sanlock (Wen Congyang),<br/>
      tests: plug memory leak on linuxTestNodeInfo (Alex Jia),<br/>
      storage: Fix a potential crash when creating vol object (Osier Yang),<br/>
      qemu: Disable EOF processing during qemuDomainDestroy (Jiri Denemark),<br/>
      virsh: Free returned MIME type string (Michal Privoznik),<br/>
      storage: Activate/deactivate logical volumes only on local node (Rommer),<br/>
      security: don't try to label network disks (Josh Durgin),<br/>
      test: replace deprecated "fedora-13" machine with "pc-0.13" (Laine Stump),<br/>
      network: don't add iptables rules for externally managed networks (Laine Stump),<br/>
      threadpool: Use while loop on virCondWait (Michal Privoznik),<br/>
      virsh: plug memory leak on cmdDomblklist (Alex Jia),<br/>
      fix error when parsing ppc64 models on x86 host (Stefan Berger),<br/>
      fix memory leak in src/nodeinfo.c (Stefan Berger),<br/>
      threadpool: Don't wait on condition if pool has no workers (Michal Privoznik),<br/>
      bridge: Fix forward delay APIs (Jiri Denemark),<br/>
      virsh: return correct value from cmdDomIfGetLink (Peter Krempa),<br/>
      virsh: plug memory leak on cmdDomIfGetLink() successful path (Alex Jia),<br/>
      virsh: plug memory leak on cmdBlkdeviotune() successful path (Alex Jia),<br/>
      test: fix potential lock corruption in test driver (Laine Stump),<br/>
      spec: fix logic bug in deciding to turn on cgconfig (Eric Blake),<br/>
      When checking nttyFDs to see if it is != 1, be sure to use '1' and not '-1' (Daniel P. Berrange),<br/>
      Fix installation of libvirt-guests.service (Daniel P. Berrange)<br/>
      </li>

      <li>Improvements:<br/>
      Implement DNS SRV record into the bridge driver (Michal Novotny),<br/>
      seclabel: honor device override in selinux (Eric Blake),<br/>
      seclabel: allow a seclabel override on a disk src (Eric Blake),<br/>
      seclabel: extend XML to allow per-disk label overrides (Eric Blake),<br/>
      seclabel: move seclabel stuff earlier (Eric Blake),<br/>
      seclabel: refactor existing domain_conf usage (Eric Blake),<br/>
      schema: rewrite seclabel rng to match code (Eric Blake),<br/>
      domiftune: Enable the virDomain{S,G}etInterfaceParameters in virsh (Hu Tao),<br/>
      domiftune: Add virDomain{S,G}etInterfaceParameters support to qemu driver (Hu Tao),<br/>
      domiftune: Add a util function virDomainNetFind (Hu Tao),<br/>
      domiftune: Add support of new APIs to the remote driver (Hu Tao),<br/>
      domiftune: virDomain{S,G}etInterfaceParameters: the main entry points (Hu Tao),<br/>
      daemon: clean up daemonization (Eric Blake),<br/>
      tests: fix schema checks sorting (Eric Blake),<br/>
      qemu: Support for overriding NOFILE limit (Michal Privoznik),<br/>
      virsh: Use vshWatchJob in cmdManagedSave (Michal Privoznik),<br/>
      virsh: Use vshWatchJob in cmdSave (Michal Privoznik),<br/>
      virsh: Use vshWatchJob in cmdDump (Michal Privoznik),<br/>
      virsh: Move job watch code to a separate function (Michal Privoznik),<br/>
      qemuhelptest: Add new qemuCap flag (Michal Privoznik),<br/>
      qemu: Support readonly filesystem passthrough (Osier Yang),<br/>
      nwfilter: Do not require DHCP requests to be broadcasted (Stefan Berger),<br/>
      tests: run schema checks in sorted order (Eric Blake),<br/>
      tests: Add fake PPC64 emulator for QEMU testing (Michael Ellerman),<br/>
      qemu: Add spapr-vio address assignment (Michael Ellerman),<br/>
      Add New address type spapr-vio to domain.rng (Bharata B Rao),<br/>
      Add address type for SPAPR VIO devices (Michael Ellerman),<br/>
      qemu: Add a capability flag for -no-acpi (Michael Ellerman),<br/>
      add new command numatune to virsh (Hu Tao),<br/>
      Implement virDomain{G, S}etNumaParameters for the qemu driver (Hu Tao),<br/>
      Add virDomain{G, S}etNumaParameters support to the remote driver (Hu Tao),<br/>
      use cpuset to manage numa (Hu Tao),<br/>
      Add functions to set/get cgroup cpuset parameters (Hu Tao),<br/>
      virsh: simplify printing of typed parameters (Eric Blake),<br/>
      Hide use of timers for domain event dispatch (Daniel P. Berrange),<br/>
      Remove decl of all APIs related to domain event callbacks &amp; queues (Daniel P. Berrange),<br/>
      Remove all domain event structs from header (Daniel P. Berrange),<br/>
      Convert drivers to thread safe APIs for adding callbacks (Daniel P. Berrange),<br/>
      Add APIs to allow management of callbacks purely with virDomainEventState (Daniel P. Berrange),<br/>
      Return count of callbacks when registering callbacks (Daniel P. Berrange),<br/>
      Convert Xen &amp; VBox drivers to use virDomainEventState (Daniel P. Berrange),<br/>
      nwfilter: do not create ebtables chain unnecessarily (Stefan Berger),<br/>
      migration: Add more specific error code/message on migration abort (Peter Krempa),<br/>
      virsh: Add option to undefine storage with domains (Peter Krempa),<br/>
      python: Expose blockPeek and memoryPeek in Python binding (Osier Yang),<br/>
      virsh: support multifunction in attach-disk (KAMEZAWA Hiroyuki),<br/>
      python: Fix export of virDomainSnapshotListChildrenNames (Peter Krempa),<br/>
      Provide a helper method virDomainLiveConfigHelperMethod (Lei Li),<br/>
      virsh: Print error message if argument parsing fails for cmdNodesuspend (Peter Krempa),<br/>
      build: follow directory install conventions (Eric Blake),<br/>
      Fix make uninstall (Dave Allan),<br/>
      qemu: Prepare to cater for more general address assignment (Michael Ellerman),<br/>
      qemu: Add address in qemuBuildChrDeviceStr() on pseries (Michael Ellerman),<br/>
      qemu: Use spapr-vscsi on pseries machine type (Michael Ellerman),<br/>
      network: allow '-' in model name (Eric Blake),<br/>
      cpu: Add cpu flags supported by newest qemu (Peter Krempa),<br/>
      Pass the VM's UUID into the nwfilter subsystem (Stefan Berger),<br/>
      nwfilter: cleanup return codes in nwfilter subsystem (Stefan Berger),<br/>
      spec: make it easier to autoreconf when building rpm (Eric Blake),<br/>
      Ensure to prefix %{buildroot} when overriding systemd install location (Daniel P. Berrange),<br/>
      Add ppc64 specific definitions to domain.rng (Bharata B Rao),<br/>
      Clean up qemuBuildCommandLine to remove x86-specific (Prerna Saxena),<br/>
      Modify the tests/nodeinfotest.c to use sysfs in addition (Prerna Saxena),<br/>
      Use sysfs to gather host topology, in place of (Prerna Saxena)<br/>
      </li>

      <li>Cleanups:<br/>
      network_conf: Fix whitespace to pass syntax-check (Peter Krempa)<br/>
      </li>
    </ul>

  </body>
</html>
