aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2010-12-03 05:45:57 -0500
committerAvi Kivity <avi@redhat.com>2011-01-12 04:30:34 -0500
commit060d0c9a2ee2b1d2cf10afc11d8a0b2d97d8f3e3 (patch)
tree691443dac81f86f096fbb4dbbc1299b5e68adf94
parent17a703cb14055c5dac7f34672d368c4d8f6ffe49 (diff)
KVM: SVM: Add clean-bit for Segements and CPL
This patch implements the clean-bit defined for the cs, ds, ss, an es segemnts and the current cpl saved in the vmcb. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com> Signed-off-by: Avi Kivity <avi@redhat.com>
-rw-r--r--arch/x86/kvm/svm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
index cbfb2ac8b4da..4db7157c5dea 100644
--- a/arch/x86/kvm/svm.c
+++ b/arch/x86/kvm/svm.c
@@ -195,6 +195,7 @@ enum {
195 VMCB_CR, /* CR0, CR3, CR4, EFER */ 195 VMCB_CR, /* CR0, CR3, CR4, EFER */
196 VMCB_DR, /* DR6, DR7 */ 196 VMCB_DR, /* DR6, DR7 */
197 VMCB_DT, /* GDT, IDT */ 197 VMCB_DT, /* GDT, IDT */
198 VMCB_SEG, /* CS, DS, SS, ES, CPL */
198 VMCB_DIRTY_MAX, 199 VMCB_DIRTY_MAX,
199}; 200};
200 201
@@ -1457,6 +1458,7 @@ static void svm_set_segment(struct kvm_vcpu *vcpu,
1457 = (svm->vmcb->save.cs.attrib 1458 = (svm->vmcb->save.cs.attrib
1458 >> SVM_SELECTOR_DPL_SHIFT) & 3; 1459 >> SVM_SELECTOR_DPL_SHIFT) & 3;
1459 1460
1461 mark_dirty(svm->vmcb, VMCB_SEG);
1460} 1462}
1461 1463
1462static void update_db_intercept(struct kvm_vcpu *vcpu) 1464static void update_db_intercept(struct kvm_vcpu *vcpu)