|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] VMX: drop bogus gpa parameter from __invept()
Perhaps there once was a plan to have a flush type requiring this, but
the current SDM has no mention of such and all callers pass zero anyway.
Take the opportunity and also change involved types to uint64_t.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -4281,9 +4281,9 @@ bool vmx_vmenter_helper(const struct cpu
{
cpumask_clear_cpu(cpu, ept->invalidate);
if ( nestedhvm_enabled(curr->domain) )
- __invept(INVEPT_ALL_CONTEXT, 0, 0);
+ __invept(INVEPT_ALL_CONTEXT, 0);
else
- __invept(INVEPT_SINGLE_CONTEXT, ept->eptp, 0);
+ __invept(INVEPT_SINGLE_CONTEXT, ept->eptp);
}
}
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -1941,7 +1941,7 @@ int nvmx_handle_invept(struct cpu_user_r
}
case INVEPT_ALL_CONTEXT:
p2m_flush_nestedp2m(current->domain);
- __invept(INVEPT_ALL_CONTEXT, 0, 0);
+ __invept(INVEPT_ALL_CONTEXT, 0);
break;
default:
vmfail_invalid(regs);
--- a/xen/include/asm-x86/hvm/vmx/vmx.h
+++ b/xen/include/asm-x86/hvm/vmx/vmx.h
@@ -452,11 +452,11 @@ static inline enum vmx_insn_errno vmwrit
return ret;
}
-static always_inline void __invept(unsigned long type, u64 eptp, u64 gpa)
+static always_inline void __invept(unsigned long type, uint64_t eptp)
{
struct {
- u64 eptp, gpa;
- } operand = {eptp, gpa};
+ uint64_t eptp, rsvd;
+ } operand = { eptp };
/*
* If single context invalidation is not supported, we escalate to
@@ -519,7 +519,7 @@ static always_inline void __invvpid(unsi
static inline void ept_sync_all(void)
{
- __invept(INVEPT_ALL_CONTEXT, 0, 0);
+ __invept(INVEPT_ALL_CONTEXT, 0);
}
void ept_sync_domain(struct p2m_domain *p2m);
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |