On Sat, 08 Aug 2026 21:41:44 +0530, Amit Machhiwal wrote:
On POWER systems, newer processor generations can operate in compatibility
modes corresponding to earlier generations (e.g., a Power11 system running
in Power10 compatibility mode). In such cases, the effective CPU level
exposed to guests differs from the physical processor generation.
This creates a problem for nested virtualization. When booting a nested KVM
guest (L2) inside a host KVM guest (L1) running in a compatibility mode,
userspace (e.g., QEMU) may derive the CPU model from the raw hardware PVR
and attempt to configure the nested guest accordingly. However, the L1
partition is constrained by the compatibility level negotiated with the
hypervisor (L0), and requests exceeding that level are rejected, leading to
guest boot failures such as:
[...]
Applied to powerpc/next.
[1/4] KVM: PPC: Introduce KVM_CAP_PPC_COMPAT_CAPS and wire up ioctl
https://git.kernel.org/powerpc/c/ac3e65ddddf3128c1f0c2187889fab458fcf4a70
[2/4] KVM: PPC: Book3S HV: Implement compat CPU capability retrieval for KVM on PowerVM
https://git.kernel.org/powerpc/c/b76fb087efcdaf6eb5c2c6c5e53c763640fc4b02
[3/4] KVM: PPC: Book3S HV: Add support for compat CPU capabilities for KVM on PowerNV
https://git.kernel.org/powerpc/c/8735048f54ec827102dcbd757a6c1c1e02613fc4
[4/4] KVM: PPC: Document KVM_PPC_GET_COMPAT_CAPS ioctl
https://git.kernel.org/powerpc/c/c1721e584244ff79a593d6f0ad0405a2e07b765a
cheers