KVM: x86 emulator: Fix #GP error code during linearization
authorAvi Kivity <avi@redhat.com>
Tue, 21 Aug 2012 14:07:06 +0000 (17:07 +0300)
committerMarcelo Tosatti <mtosatti@redhat.com>
Mon, 27 Aug 2012 23:02:20 +0000 (20:02 -0300)
We want the segment selector, nor segment number.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
arch/x86/kvm/emulate.c

index 5b1c701cd6d04f04160b274e7d204fa342e1dec3..1451cffd97eb87cdde07379d2d5dda0f37dc7509 100644 (file)
@@ -725,9 +725,9 @@ static int __linearize(struct x86_emulate_ctxt *ctxt,
        return X86EMUL_CONTINUE;
 bad:
        if (addr.seg == VCPU_SREG_SS)
-               return emulate_ss(ctxt, addr.seg);
+               return emulate_ss(ctxt, sel);
        else
-               return emulate_gp(ctxt, addr.seg);
+               return emulate_gp(ctxt, sel);
 }
 
 static int linearize(struct x86_emulate_ctxt *ctxt,