Hi.
On Mon, May 20, 2024 at 21:04:59 +0800, d tbsky wrote:
> Hi:
> I update our RHEL9 system to RHEL 9.4, which brings libvirt 10.0.
> I try to calculate the cpu baseline for our two-node cluster with
> command "virsh domcapabilities" then "virsh hypervisor-cpu-baseline
> --migratable". the result has many cpu features begin with "vmx".
>
> the test cluster has cpu "intel E3-1280 V3" and "intel I3-9100F".
> when I try live migrate vm, it failed and told me "guest CPU doesn't
> match specification: missing features:
> vmx-apicv-register,vmx-apicv-vid,vmx-posted-intr".
Interesting, hypervisor-cpu-baseline is supposed to provide an
intersection of both CPU models. I wonder whether we have a bug
somewhere, could you share the host-model definition from virsh
domcapabilities from both hosts? The easiest way is running
$ virsh domcapabilities | xmllint --xpath '//cpu/mode[@name="host-model"]' -
> at another cluster with cpu " Intel i5-2520M" and "Intel
> i7-9750H" the migration works fine for the calculated cpu result.
> although there are still many "vmx" cpu features in the result.
>
> if I delete all these vmx features, then migration works fine for
> both cluster, like old days.
>
> I wonder what's the benefit to expose these vmx features to guest
> if I don't do any nested virtualization.
Well, they were always exposed by QEMU, libvirt just added support for
them and thus they are visible in the XMLs as well.
> is it ok the drop all these vmx cpu features for a guest?
> thanks a lot for help!
Sure, unless you specifically need some of them, you can drop them. They
will be added to the XML anyway during VM startup.
Jirka