Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update 'hw:cpu_model' meta data to support *-IBRS vcpu type #15

Closed
wants to merge 1 commit into from

Conversation

austinsun
Copy link

after libvirt upgraded to 4.7.0, there are some new vcpu types for
instance vcpu_model, if compute node is using *-IBRS cpu,
Passthrough favor can not be used for creating instance.
it will cause some like below error
"No valid host was found. There are not enough hosts available.
computer-0: (VCpuModelFilter) Host VCPU model Skylake-Server-IBRS
required Passthrough
Code 501"

Closes-Bug: 1803280

Signed-off-by: Sun Austin austin.sun@intel.com

after libvirt upgraded to 4.7.0, there are some new vcpu types for
instance vcpu_model, if compute node is using *-IBRS cpu,
Passthrough favor can not be used for creating instance.
it will cause some like below error
"No valid host was found. There are not enough hosts available.
 computer-0: (VCpuModelFilter) Host VCPU model Skylake-Server-IBRS
 required Passthrough
 Code 501"

Closes-Bug: 1803280

Signed-off-by: Sun Austin <austin.sun@intel.com>
Copy link
Contributor

@cbf123 cbf123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a problem with this patch. The way the VCpuModelFilter is designed, the basic idea is that a host with a CPU model "later" in the list can support guests with all CPU models "earlier" in the list.

According to [1] the "spec-ctrl" and "ssbd" CPU features require host CPU microcode (i.e. that the host is detected as the "-IBRS" model) before it can be used for guest CPUs. This means that a "Skylake-Server" host cannot support a "Broadwell-IBRS" guest, which violates the design of the VCpuModelFilter.

I think as part of adding the -IBRS models we'll have to also modify the filter itself.

Chris

[1] https://www.berrange.com/posts/2018/06/29/cpu-model-configuration-for-qemu-kvm-on-x86-hosts/

@austinsun
Copy link
Author

Yes. Thanks your suggestion. I will make a new PR later.

@austinsun austinsun closed this Nov 17, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants