diff options
-rw-r--r-- | sys/arch/amd64/amd64/vmm.c | 4 | ||||
-rw-r--r-- | sys/arch/amd64/include/vmmvar.h | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/sys/arch/amd64/amd64/vmm.c b/sys/arch/amd64/amd64/vmm.c index 8570ed6b732..ec8cbd7a188 100644 --- a/sys/arch/amd64/amd64/vmm.c +++ b/sys/arch/amd64/amd64/vmm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vmm.c,v 1.185 2018/03/18 08:58:58 mlarkin Exp $ */ +/* $OpenBSD: vmm.c,v 1.186 2018/03/29 02:25:10 mlarkin Exp $ */ /* * Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org> * @@ -5943,7 +5943,7 @@ vmm_handle_cpuid(struct vcpu *vcpu) *rax = curcpu()->ci_efeature_eax; *rbx = 0; /* Reserved */ *rcx = curcpu()->ci_efeature_ecx; - *rdx = curcpu()->ci_feature_eflags; + *rdx = curcpu()->ci_feature_eflags & VMM_FEAT_EFLAGS_MASK; break; case 0x80000002: /* Brand string */ *rax = curcpu()->ci_brand[0]; diff --git a/sys/arch/amd64/include/vmmvar.h b/sys/arch/amd64/include/vmmvar.h index b6fe6ece4a8..920a2e296a0 100644 --- a/sys/arch/amd64/include/vmmvar.h +++ b/sys/arch/amd64/include/vmmvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: vmmvar.h,v 1.50 2017/11/29 02:46:10 mlarkin Exp $ */ +/* $OpenBSD: vmmvar.h,v 1.51 2018/03/29 02:25:10 mlarkin Exp $ */ /* * Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org> * @@ -587,6 +587,12 @@ struct vm_rwregs_params { SEFF0EBX_AVX512BW | SEFF0EBX_AVX512VL) #define VMM_SEFF0ECX_MASK ~(SEFF0ECX_AVX512VBMI) +/* + * Extended function flags - copy from host minus: + * 0x80000001 EDX:RDTSCP Support + */ +#define VMM_FEAT_EFLAGS_MASK ~(CPUID_RDTSCP) + #ifdef _KERNEL #define VMX_FAIL_LAUNCH_UNKNOWN 1 |