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

Signed-off-by: Avi Kivity <[email protected]>
Signed-off-by: Marcelo Tosatti <[email protected]>
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,