diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2010-12-03 11:45:57 +0100 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2011-01-12 10:30:34 +0100 |
commit | 060d0c9a2ee2b1d2cf10afc11d8a0b2d97d8f3e3 (patch) | |
tree | 691443dac81f86f096fbb4dbbc1299b5e68adf94 /arch | |
parent | KVM: SVM: Add clean-bit for GDT and IDT (diff) | |
download | linux-060d0c9a2ee2b1d2cf10afc11d8a0b2d97d8f3e3.tar.xz linux-060d0c9a2ee2b1d2cf10afc11d8a0b2d97d8f3e3.zip |
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>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kvm/svm.c | 2 |
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 { VMCB_CR, /* CR0, CR3, CR4, EFER */ VMCB_DR, /* DR6, DR7 */ VMCB_DT, /* GDT, IDT */ + VMCB_SEG, /* CS, DS, SS, ES, CPL */ VMCB_DIRTY_MAX, }; @@ -1457,6 +1458,7 @@ static void svm_set_segment(struct kvm_vcpu *vcpu, = (svm->vmcb->save.cs.attrib >> SVM_SELECTOR_DPL_SHIFT) & 3; + mark_dirty(svm->vmcb, VMCB_SEG); } static void update_db_intercept(struct kvm_vcpu *vcpu) |