]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
KVM: Fix fs/gs reload oops with invalid ldt
authorAvi Kivity <avi@redhat.com>
Thu, 28 Oct 2010 18:48:16 +0000 (16:48 -0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 22 Nov 2010 18:47:34 +0000 (10:47 -0800)
commit325d960fd9c0211aa32ecffb80edf430b9f9f87e
tree99598087b35a3bf28ad303c0bd1469e50e25a2d4
parent69b54926aa37cb07b23ef856d82ea5ec9df8bb86
KVM: Fix fs/gs reload oops with invalid ldt

commit 9581d442b9058d3699b4be568b6e5eae38a41493 upstream

kvm reloads the host's fs and gs blindly, however the underlying segment
descriptors may be invalid due to the user modifying the ldt after loading
them.

Fix by using the safe accessors (loadsegment() and load_gs_index()) instead
of home grown unsafe versions.

This is CVE-2010-3698.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/include/asm/kvm_host.h
arch/x86/kvm/svm.c
arch/x86/kvm/vmx.c