File 582c35ee-x86-traps-dont-call-hvm_hypervisor_cpuid_leaf-for-PV.patch of Package xen.6117
# Commit 0f43883193da76fc928e836e319c3172f394e0f3
# Date 2016-11-16 10:33:18 +0000
# Author Andrew Cooper <andrew.cooper3@citrix.com>
# Committer Andrew Cooper <andrew.cooper3@citrix.com>
x86/traps: Don't call hvm_hypervisor_cpuid_leaf() for PV guests
Luckily, hvm_hypervisor_cpuid_leaf() and vmx_hypervisor_cpuid_leaf() are safe
to execute in the context of a PV guest, but HVM-specific feature flags
shouldn't be visible to PV guests.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -743,6 +743,11 @@ int cpuid_hypervisor_leaves( uint32_t id
break;
case 4:
+ if ( !has_hvm_container_domain(d) )
+ {
+ *eax = *ebx = *ecx = *edx = 0;
+ break;
+ }
hvm_hypervisor_cpuid_leaf(sub_idx, eax, ebx, ecx, edx);
break;