Hi Everyone,
We had a requirement to skip all CPU feature
validations from libvirt and totally rely on Qemu for following
reasons.
- As libvirt always lies behind in term of cpu
feature management compare to qemu, so we may not be able to
use all of the latest support provided by qemu till it is
updated in libvirt too. For example like if new cpu features
are added in qemu but not yet updated in libvirt.
- Libvirt does not support cpu model versioning as Qemu.
- Libvirt checks if a features is supported or not based on cpuid, a feature supported by host may not be supported by qemu or there can be some features which are emulated by Qemu so libvirt level checking does not make sense in those cases.
- Qemu already provide an option 'enforce' to validate if features with which vm is started is exactly same as one provided and nothing is silently dropped.
Basically we want another check option like
'qemu-enforce' which will skip all feature and cpu model
verfications in libvirt and pass 'enforce' option to qemu. It
will work similar to check 'none' i mean no check to verify if
provide features are supported by host, also on top of that skip
things like virCPUValidateFeatures where ever required.
I understand this is specific to just Qemu and libvirt has to take care for many other emulator, so wanted to check if something like that makes sense as it will be very useful for Qemu atleast. If so we can send a patch.
Thanks
Manish Mishra