From: Kevin Wolf Date: Wed, 8 Feb 2012 13:34:39 +0000 (+0100) Subject: KVM: x86 emulator: VM86 segments must have DPL 3 X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=66b0ab8fac1031ffc70eb77491048339f2717a54;p=deliverable%2Flinux.git KVM: x86 emulator: VM86 segments must have DPL 3 Setting the segment DPL to 0 for at least the VM86 code segment makes the VM entry fail on VMX. Signed-off-by: Kevin Wolf Signed-off-by: Avi Kivity --- diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c index fa310a48591c..b19e9fffe582 100644 --- a/arch/x86/kvm/emulate.c +++ b/arch/x86/kvm/emulate.c @@ -1244,6 +1244,8 @@ static int load_segment_descriptor(struct x86_emulate_ctxt *ctxt, seg_desc.type = 3; seg_desc.p = 1; seg_desc.s = 1; + if (ctxt->mode == X86EMUL_MODE_VM86) + seg_desc.dpl = 3; goto load; }