|
@@ -12373,6 +12373,9 @@ static int check_vmentry_prereqs(struct kvm_vcpu *vcpu, struct vmcs12 *vmcs12)
|
|
vmcs12->guest_activity_state != GUEST_ACTIVITY_HLT)
|
|
vmcs12->guest_activity_state != GUEST_ACTIVITY_HLT)
|
|
return VMXERR_ENTRY_INVALID_CONTROL_FIELD;
|
|
return VMXERR_ENTRY_INVALID_CONTROL_FIELD;
|
|
|
|
|
|
|
|
+ if (nested_cpu_has_vpid(vmcs12) && !vmcs12->virtual_processor_id)
|
|
|
|
+ return VMXERR_ENTRY_INVALID_CONTROL_FIELD;
|
|
|
|
+
|
|
if (nested_vmx_check_io_bitmap_controls(vcpu, vmcs12))
|
|
if (nested_vmx_check_io_bitmap_controls(vcpu, vmcs12))
|
|
return VMXERR_ENTRY_INVALID_CONTROL_FIELD;
|
|
return VMXERR_ENTRY_INVALID_CONTROL_FIELD;
|
|
|
|
|