diff options
author | Gleb Natapov <gleb@redhat.com> | 2010-02-18 12:15:01 +0200 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2010-03-01 12:36:14 -0300 |
commit | c697518a861e6c43b92b848895f9926580ee63c3 (patch) | |
tree | 23c0b9169dfe783bd4615795cd5495f369d42122 /arch/x86/include | |
parent | 6f550484a15ea1b468665cdf59f020bf08ccb292 (diff) | |
download | kernel_samsung_smdk4412-c697518a861e6c43b92b848895f9926580ee63c3.zip kernel_samsung_smdk4412-c697518a861e6c43b92b848895f9926580ee63c3.tar.gz kernel_samsung_smdk4412-c697518a861e6c43b92b848895f9926580ee63c3.tar.bz2 |
KVM: Fix segment descriptor loading
Add proper error and permission checking. This patch also change task
switching code to load segment selectors before segment descriptors, like
SDM requires, otherwise permission checking during segment descriptor
loading will be incorrect.
Cc: stable@kernel.org (2.6.33, 2.6.32)
Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/kvm_host.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index f9a2f66..06d9e79 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -614,8 +614,7 @@ int emulator_set_dr(struct x86_emulate_ctxt *ctxt, int dr, unsigned long value); void kvm_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg); -int kvm_load_segment_descriptor(struct kvm_vcpu *vcpu, u16 selector, - int type_bits, int seg); +int kvm_load_segment_descriptor(struct kvm_vcpu *vcpu, u16 selector, int seg); int kvm_task_switch(struct kvm_vcpu *vcpu, u16 tss_selector, int reason); |