From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kevin Wolf Subject: [PATCH v4 2/4] KVM: x86 emulator: VM86 segments must have DPL 3 Date: Wed, 8 Feb 2012 14:34:39 +0100 Message-ID: <1328708081-12842-3-git-send-email-kwolf@redhat.com> References: <1328708081-12842-1-git-send-email-kwolf@redhat.com> Cc: kwolf@redhat.com, gleb@redhat.com, joerg.roedel@amd.com, yoshikawa.takuya@oss.ntt.co.jp, avi@redhat.com, mtosatti@redhat.com To: kvm@vger.kernel.org Return-path: Received: from mx1.redhat.com ([209.132.183.28]:13907 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757151Ab2BHNbV (ORCPT ); Wed, 8 Feb 2012 08:31:21 -0500 In-Reply-To: <1328708081-12842-1-git-send-email-kwolf@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: 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 --- arch/x86/kvm/emulate.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c index 7097ca9..144a203 100644 --- a/arch/x86/kvm/emulate.c +++ b/arch/x86/kvm/emulate.c @@ -1243,6 +1243,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; } -- 1.7.6.5