Release of libvirt-9.1.0

Jiri Denemark jdenemar at redhat.com
Wed Mar 1 10:17:16 UTC 2023


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

    https://libvirt.org/sources/
    https://libvirt.org/sources/python/

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

* Removed features

  * vbox: removed support for version 5.2 and 6.0 APIs

    Libvirt no longer supports use of VirtualBox 5.2 and 6.0 since these
    versions reached their end of life on 2020/07.

* New features

  * vbox: added support for version 7.0 API

    Libvirt can now support use of the VirtualBox 7.0, This is compile tested
    only, so we are looking for feedback from users on how well it works in
    practice.

  * qemu: Support crypto device

    Support crypto device(virtio crypto only), also add support for QEMU with
    backend ``builtin`` and ``lkcf``.

  * qemu: added support for pvpanic-pci device

    A pvpanic device can be now defined as a PCI device (the original is an ISA
    device) with ``<panic model='pvpanic'/>``.

  * qemu: support automatic restart of inadvertently terminated passt process

    If the passt process that is serving as the backend of a -netdev
    stream is terminated unexpectedly, libvirt now listens to QEMU's
    notification of this, and starts up a new passt instance, thus
    preserving network connectivity.

* Improvements

  * RPM packaging changes

    The ``libvirt-daemon`` subpackage is split into several new subpackages,
    allowing installation of a modular daemon configuration without the
    traditional monolithic libvirtd.

* Bug fixes

  * QEMU: iTCO watchdog made operational

    The watchdog was always included when q35 machine type was used, but needed
    an extra bit of configuration in order to be operational.  This is now done
    by default when running a QEMU domain with q35 machine type.  This is not a
    change in the guest ABI, but it is a guest visible behavior change since the
    watchdog that did not fire before will now fire once used.  To switch to the
    previous behavior the watchdog action must be set to ``none``.

  * QEMU: fix deleting memory snapshot when deleting external snapshots

    When external snapshot deletion was introduced it did not remove memory
    snapshot when it existed. In addition when external memory only snapshot
    was created libvirt failed without producing any error.

  * QEMU: properly report passt startup errors

    Due to how the child passt process was started, the initial
    support for passt (added in 9.0.0) would not see errors
    encountered during startup, so libvirt would continue to setup and
    start the guest; this led to a running guest with no network
    connectivity.

    (NB: On systems that use them, it is still necessary to disable
    SELinux/AppArmor to start passt. This is a temporary limitation,
    and use of the feature in production is strongly discouraged
    until it has been lifted.)

  * qemu: Fix error when attempting to change media in a CDROM drive

    Due to a logic bug introduced in libvirt-9.0 attempts to change media in a
    CDROM would previously fail with an error stating that the tray isn't open.

  * qemu: Properly handle block job transitions

    Starting with libvirt-9.0 the block job state machine improperly handled
    some job transitions, which resulted into some block jobs not being
    properly terminated. This could cause problems such as errors when
    detaching a disk after snapshot.

  * virsh: Make domif-setlink work more than once

    There was a bug introduced in the previous release which made ``virsh
    domif-setlink`` work exactly once over given domain. The bug was fixed and
    now the command can be run multiple times.

  * qemu: Make domain startup fail if NIC already exists

    When starting a domain with an ``<interface/>`` that's supposed to be
    managed by libvirt (``managed='yes'``) but corresponding TAP device already
    exists, report an error and make the startup process fail.

  * qemu: Deal with nested mounts when umount()-ing /dev

    When setting up private ``/dev`` for a domain (also known as ``namespaces``
    in ``qemu.conf``), libvirt preserves mount points nested under ``/dev``
    (e.g.  ``/dev/shm``, ``/dev/pts`` and so on). But there was a bug which
    resulted in inability to construct the namespace when there were two or
    more filesystems mounted on the same path. This is common scenario with
    containers and thus the bug was fixed.

  * remote: Pass ``mode`` and ``socket`` URI parameters to virt-ssh-helper

    When connecting to a remote host using SSH transport, ``?mode=`` and
    ``?socket=`` URI parameters were ignored. This prevented users from
    connecting to a monolithic daemon running on a remote host.

  * qemu: Various ``swtpm`` related fixes

    There are more cleanups and small bug fixes with regards to emulated
    ``<tpm/>``. For instance with migration when the ``swtpm`` state is on a
    shared volume, or seclabel setting/restoring.

Enjoy.

Jirka


More information about the Libvirt-announce mailing list