linux/arch
Takuya Yoshikawa c125c60732 KVM: fix load_guest_segment_descriptor() to return X86EMUL_*
This patch fixes load_guest_segment_descriptor() to return
X86EMUL_PROPAGATE_FAULT when it tries to access the descriptor
table beyond the limit of it: suggested by Marcelo.

I have checked current callers of this helper function,
  - kvm_load_segment_descriptor()
  - kvm_task_switch()
and confirmed that this patch will change nothing in the
upper layers if we do not change the handling of this
return value from load_guest_segment_descriptor().

Next step: Although fixing the kvm_task_switch() to handle the
propagated faults properly seems difficult, and maybe not worth
it because TSS is not used commonly these days, we can fix
kvm_load_segment_descriptor(). By doing so, the injected #GP
becomes possible to be handled by the guest. The only problem
for this is how to differentiate this fault from the page faults
generated by kvm_read_guest_virt(). We may have to split this
function to achive this goal.

Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-03-01 12:36:07 -03:00
..
alpha
arm
avr32
blackfin
cris
frv
h8300 m68k{,nommu}/h8300: Remove obsolete comment about map_chunk 2010-02-27 18:27:14 +01:00
ia64 KVM: fix cleanup_srcu_struct on vm destruction 2010-03-01 12:36:01 -03:00
m32r
m68k m68k: Define sigcontext ABI of ColdFire 2010-02-27 18:44:10 +01:00
m68knommu m68knommu: NPTL support for uClinux 2010-02-27 18:35:22 +01:00
microblaze
mips Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:38:45 -08:00
mn10300
parisc
powerpc KVM: PPC E500: fix tlbcfg emulation 2010-03-01 12:36:06 -03:00
s390 KVM: fix cleanup_srcu_struct on vm destruction 2010-03-01 12:36:01 -03:00
score
sh Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:20:25 -08:00
sparc Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:20:25 -08:00
um Merge branch 'x86-rwsem-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:41:35 -08:00
x86 KVM: fix load_guest_segment_descriptor() to return X86EMUL_* 2010-03-01 12:36:07 -03:00
xtensa
.gitignore
Kconfig Merge branch 'tracing-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:17:55 -08:00