AMD server do not support nested virtualization

Bug #2067757 reported by bryan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Invalid
Undecided
Unassigned

Bug Description

From Linux kernel v4.19 onwards, the nested KVM parameter is enabled by default for Intel and AMD. (Though your Linux distribution might override this default, here is the official documentation of this: https://www.kernel.org/doc/html/v5.7/virt/kvm/running-nested-guests.html

We are using OpenStack Zed on CentOS 9 and the VM is running on AMD compute nodes, and the kernel version is: 5.14.0-386.el9.x86_64.

When we created an instance on AMD server and set the "cpu_mode" to "none", we found that the "svm" feature is passed to the instance XML on libvirt, but when we execu "lscpu" inside the VM, we can not see the "svm" feature, so we could not create a L2 instance inside the VM.

However, when we set the "cpu_mode" to "host-passthrough" and hard reboot the VM, the "svm" is set correctly within the VM.

For intel servers, we can create nested instances by default, and the "cpu_mode" is also set to "none", and everything works well.

We guess it might because of some CPU feature dependencies which cause this issue. Can you help us to take a look? Thanks

Tags: amd
bryan (bryansoong21)
description: updated
Revision history for this message
sean mooney (sean-k-mooney) wrote :

that not the reason, rhel based distos disabel nested virt on amd by default if i recall correctly and you have to explicitly enabled it.

its not supported on RHEL and is considered tech preview as there are several know bugs.
intel is also not supported downstream for production workload however it much more mature and i bleive its enabled by defuat.

nova is not filtering out svm.

setting cpu_mode=none effectively is the same as cpu_mode=host-model

so either libvirt is disbalinging it or its a kernel default issue.

in either case i don't think this is a valid nova bug.

Changed in nova:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.