On Fri, Sep 14, 2018 at 10:35:58 +0200, Andrea Bolognani wrote:
There are a few cases in which we're not reporting the correct
information through 'virsh capabilities', leading to applications
such as libguestfs attempting to launch KVM guests on a host that
doesn't actually support them.
Our code is also more complicated than it needs to be due to
backwards compatibilty reasons that we no longer care about these
days, so we can perform some cleanup there; there are further
cleanup opportunities in the same area, but some of them are a
bit tricky so I'll leave them for a follow-up series.
We also get some extra test coverage pretty much for free. Yay!
So this makes things cleaner and fixes KVM reporting in capabilities.
But we also check /dev/kvm in virQEMUCapsIsValid. Which means we may
reprobe QEMU everytime in case the kvm module is not loaded (but
/dev/kvm exists) and we will never catch the case when kvm module was
loaded originally, but the admin unloads it while libvirtd is running.
Although this series doesn't make it any worse.
qemu: Drop QEMU_CAPS_ENABLE_KVM
After removing this capability it looks like virQEMUCapsIsValid will
always invalidate every single non-native QEMU binary since kvm could
not clearly be used when probing and /dev/kvm is present. Shouldn't we
add a check which makes sure we don't go this far for non-native
binaries?
Jirka