On Wed, Aug 05, 2020 at 10:19:26AM +0200, Andrea Bolognani wrote:
On Wed, 2020-08-05 at 02:09 -0400, Mark Mielke wrote:
> Hi all:
>
> In testing qemu-5.1rc2 on my Fedora 32 home system, I found that
> the Fedora rawhide package has broken out both the QXL display
> device and the USB redirect device into separate RPM modules:
>
> qemu-device-display-qxl.x86_64 2:5.1.0-0.1.rc2.fc32
> qemu-device-usb-redirect.x86_64 2:5.1.0-0.1.rc2.fc32
>
> The upgrade from 5.0.0 to 5.1.0 does not treat these sub-packages
> as mandatory packages, therefore a straight upgrade of packages
> causes these domcapabilities to disappear.
>
> If the user tries to use libvirt after this, then existing domains
> using QXL display device or USB redirect device will fail to start.
> If the user then investigates and realizes that they now need to
> install the above packages separately, they find that qemu-kvm
> recognizes the modules right away, but libvirt does not. This looks
> to be due to the libvirt domcapabilities cache?
I guess we need to start checking the modules directory in addition
to the main QEMU binary, and regenerate capabilities every time its
contents change.
That said, if upgrading QEMU results in losing features, even though
you can recover them through additional steps I would argue that's a
bug in the packaging that should be addressed on the QEMU side.
Potentially we can consider this a distro packaging problem and fix
it at the RPM level.
eg the libvirt RPM can define a trigger that runs when *any* of the
qemu-device* RPMs is installed/updated. This trigger can simply
touch a file on disk somewhere, and libvirtd can monitor this one
file, instead of having to monitor every module.
Regards,
Daniel
--
|:
https://berrange.com -o-
https://www.flickr.com/photos/dberrange :|
|:
https://libvirt.org -o-
https://fstop138.berrange.com :|
|:
https://entangle-photo.org -o-
https://www.instagram.com/dberrange :|