Release of libvirt-6.7.0

Jiri Denemark jdenemar at
Tue Sep 1 07:14:14 UTC 2020

The 6.7.0 release of both libvirt and libvirt-python is tagged and
signed tarballs and source RPMs are available at

Thanks everybody who helped with this release by sending patches,
reviewing, testing, or providing any other feedback. Your work is
greatly appreciated.

* Packaging changes

  * Libvirt switch to Meson build system

    Libvirt abandoned autotools and switched to Meson build system.

* New features

  * qemu: Add support for initiator IQN configuration for iSCSI hostdevs

    Similarly to iSCSI ``<disk>`` users can use an ``<initiator>`` element
    inside ``<hostdev>`` with the same format to configure the ``IQN`` value
    used by the qemu initiator when connecting to an iSCSI target.

  * xen: Add support for device model command-line passthrough

    Xen supports passing arbitrary arguments to the QEMU device model using
    the ``device_model_args`` setting in xl.cfg(5). The libvirt xen driver now
    supports this using ``<xen:commandline/>`` XML extensions.

  * shmem: Add support for shmem-{plain, doorbell} ``role`` option

    The ``role`` attribute controls how the domain behaves on migration. With
    ``role=master``, the guest will copy the shared memory on migration to
    the destination host. With ``role=peer``, the migration is disabled.

  * bhyve: Sound device support

    This feature allows to configure guest sound device using
    the ``<sound>`` element, and map it to the host sound device using
    the ``<audio>`` element.

* Improvements

  * Allow sparse streams for block devices

    Sparse streams (e.g. ``virsh vol-download --sparse`` or ``virsh vol-upload
    --sparse``) now handle if one of the stream ends is a block device.

  * Remove NVDIMM auto-alignment for pSeries Guests

    This feature was introduced in libvirt v6.2.0 as part of the overall
    NVDIMM support for pSeries guests. The idea was to relieve the user
    from knowing ppc64 alignment details, but the end result is that we
    ended up with inconsistencies between domain XML and actual NVDIMM
    size the guest is using. To promote consistency between domain XML
    and the guest, unaligned NVDIMM sizes for pSeries guests will now be
    forbidden and no size auto-alignment will be made. Instead, libvirt will
    suggest an aligned round up size for the user.

* Bug fixes

  * virdevmapper: Deal with kernels without DM support

    In the previous release libvirt dropped libdevmapper in favor of its own
    implementation. However, it failed to deal correctly with kernels that
    either don't have device mapper enabled or where the dm-mod module is not
    loaded yet. This is now fixed.

  * resctrl: Use exclusive lock for /sys/fs/resctrl

    When two or more domains were attempted to start at once, due to a bug in
    implementation, resctrl was not locked properly and thus threads did not
    mutually exclude with each other resulting in not setting requested

  * mdev: Fix daemon crash when reattaching mdevs on assignment conflict

    If there's a list of mdevs to be assigned to a domain, but one of them (NOT
    the first) is already assigned to a different domain then libvirtd would
    crash. This is now fixed.

  * Fix logic in setting COW flag on btrfs

    When COW is not explicitly requested to be disabled or enabled, then
    libvirt should do nothing on non-BTRFS file systems.

  * Avoid crash due to race in glib event loop code

    Libvirt switched to glib event loop in 6.1.0 but it was also tickling a bug
    in glib code leading to the daemon crash. Libvirt way of calling glib was
    changed so the daemon crashes no more.

  * virdevmapper: Handle kernel without device-mapper support

    In the previous release, Libvirt dropped libdevmapper in favor of its own
    implementation. But the implementation did not handle kernels without
    device-mapper support. This is now fixed.

  * remove autogenerated macvtap names from migration XML

    Autogenerated macvtap device names were being left in the
    migration XML, which could result in libvirt erroneously deleting
    the macvtap device of a different guest in the aftermath of
    failing to restart the guest on the destination host. Removing the
    autogenerated names avoids this.



More information about the Libvirt-announce mailing list