* [kvm-unit-tests PATCH] x86: vmx: fix definition of X86_CR4_VMXE
@ 2016-02-22 23:40 Peter Feiner
2016-02-23 12:14 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Peter Feiner @ 2016-02-22 23:40 UTC (permalink / raw)
To: kvm, drjones, pbonzini; +Cc: pfeiner
Was defined as 0x1 when it should have been 0x2000 (13th bit of CR4).
See Intel manual 23.7. 0x1 is the VME 'Virtual-8086 Mode Extensions'
bit, which the vmx tests don't exercise.
The correct bit was being set thanks to IA32_VMX_CR4_FIXED{0,1} MSRs
forcing it.
I hacked the test setup to forcibly un-set the bit and observed the
correct #UD VMXON behavior. Adding a test to verify the #UD behavior
is follow-up work.
Signed-off-by: Peter Feiner <pfeiner@google.com>
---
lib/x86/processor.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/x86/processor.h b/lib/x86/processor.h
index 95cea1a..dff1689 100644
--- a/lib/x86/processor.h
+++ b/lib/x86/processor.h
@@ -21,7 +21,7 @@
#define X86_CR0_WP 0x00010000
#define X86_CR0_AM 0x00040000
#define X86_CR0_PG 0x80000000
-#define X86_CR4_VMXE 0x00000001
+#define X86_CR4_VMXE 0x00002000
#define X86_CR4_TSD 0x00000004
#define X86_CR4_DE 0x00000008
#define X86_CR4_PSE 0x00000010
--
2.7.0.rc3.207.g0ac5344
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [kvm-unit-tests PATCH] x86: vmx: fix definition of X86_CR4_VMXE
2016-02-22 23:40 [kvm-unit-tests PATCH] x86: vmx: fix definition of X86_CR4_VMXE Peter Feiner
@ 2016-02-23 12:14 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2016-02-23 12:14 UTC (permalink / raw)
To: Peter Feiner, kvm, drjones
On 23/02/2016 00:40, Peter Feiner wrote:
> Was defined as 0x1 when it should have been 0x2000 (13th bit of CR4).
> See Intel manual 23.7. 0x1 is the VME 'Virtual-8086 Mode Extensions'
> bit, which the vmx tests don't exercise.
>
> The correct bit was being set thanks to IA32_VMX_CR4_FIXED{0,1} MSRs
> forcing it.
>
> I hacked the test setup to forcibly un-set the bit and observed the
> correct #UD VMXON behavior. Adding a test to verify the #UD behavior
> is follow-up work.
>
> Signed-off-by: Peter Feiner <pfeiner@google.com>
> ---
> lib/x86/processor.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/x86/processor.h b/lib/x86/processor.h
> index 95cea1a..dff1689 100644
> --- a/lib/x86/processor.h
> +++ b/lib/x86/processor.h
> @@ -21,7 +21,7 @@
> #define X86_CR0_WP 0x00010000
> #define X86_CR0_AM 0x00040000
> #define X86_CR0_PG 0x80000000
> -#define X86_CR4_VMXE 0x00000001
> +#define X86_CR4_VMXE 0x00002000
> #define X86_CR4_TSD 0x00000004
> #define X86_CR4_DE 0x00000008
> #define X86_CR4_PSE 0x00000010
>
Thanks, applying both patches.
Paolo
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-02-23 12:14 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-22 23:40 [kvm-unit-tests PATCH] x86: vmx: fix definition of X86_CR4_VMXE Peter Feiner
2016-02-23 12:14 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).