On 21/10/2016 22:02, Radim Krčmář wrote: >> >> + case VMX_VPID_EXTENT_INDIVIDUAL_ADDR: >> case VMX_VPID_EXTENT_SINGLE_CONTEXT: >> + case VMX_VPID_EXTENT_SINGLE_CONTEXT_RETAINING_GLOBALS: The comment below can be moved here, saying that Hyper-V and old versions of KVM require these cases to be supported: /* * Hyper-V and old versions of KVM require that we support these * cases, even though we cannot really do anything special about * them and treat them as all-context invalidation. */ Paolo >> + if (!vpid) { >> + nested_vmx_failValid(vcpu, >> + VMXERR_INVALID_OPERAND_TO_INVEPT_INVVPID); >> + skip_emulated_instruction(vcpu); >> + return 1; > > (Just break and share the code.) > >> + } >> + /* fall through */ >> + case VMX_VPID_EXTENT_GLOBAL_CONTEXT: >> /* >> - * Old versions of KVM use the single-context version so we >> - * have to support it; just treat it the same as all-context. >> + * Treat any invvpid type as all-context invalidation >> */ >> - case VMX_VPID_EXTENT_GLOBAL_CONTEXT: >> __vmx_flush_tlb(vcpu, to_vmx(vcpu)->nested.vpid02); >> nested_vmx_succeed(vcpu); >> break; -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html