summaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/svm.c
diff options
context:
space:
mode:
authorJan Kiszka2014-06-29 17:12:43 +0200
committerPaolo Bonzini2014-06-30 16:45:28 +0200
commit33b458d276bbdbe28febac0742835002b9f4778d (patch)
tree839706424a00121501314577d5c6e5e4b16e5125 /arch/x86/kvm/svm.c
parentKVM: x86: get CPL from SS.DPL (diff)
downloadkernel-qcow2-linux-33b458d276bbdbe28febac0742835002b9f4778d.tar.gz
kernel-qcow2-linux-33b458d276bbdbe28febac0742835002b9f4778d.tar.xz
kernel-qcow2-linux-33b458d276bbdbe28febac0742835002b9f4778d.zip
KVM: SVM: Fix CPL export via SS.DPL
We import the CPL via SS.DPL since ae9fedc793. However, we fail to export it this way so far. This caused spurious guest crashes, e.g. of Linux when accessing the vmport from guest user space which triggered register saving/restoring to/from host user space. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/kvm/svm.c')
-rw-r--r--arch/x86/kvm/svm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
index ec8366c5cfea..b5e994ad0135 100644
--- a/arch/x86/kvm/svm.c
+++ b/arch/x86/kvm/svm.c
@@ -1462,6 +1462,7 @@ static void svm_get_segment(struct kvm_vcpu *vcpu,
*/
if (var->unusable)
var->db = 0;
+ var->dpl = to_svm(vcpu)->vmcb->save.cpl;
break;
}
}