linux/arch/x86/kvm
Takuya Yoshikawa 6f550484a1 KVM: Fix load_guest_segment_descriptor() to inject page fault
This patch injects page fault when reading descriptor in
load_guest_segment_descriptor() fails with FAULT.

Effects of this injection: This function is used by
kvm_load_segment_descriptor() which is necessary for the
following instructions:

 - mov seg,r/m16
 - jmp far
 - pop ?s

This patch makes it possible to emulate the page faults
generated by these instructions. But be sure that unless
we change the kvm_load_segment_descriptor()'s ret value
propagation this patch has no effect.

Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2010-03-01 12:36:13 -03:00
..
emulate.c KVM: x86 emulator: Forbid modifying CS segment register by mov instruction 2010-03-01 12:36:13 -03:00
i8254.c KVM: Convert i8254/i8259 locks to raw_spinlocks 2010-03-01 12:36:12 -03:00
i8254.h KVM: Convert i8254/i8259 locks to raw_spinlocks 2010-03-01 12:36:12 -03:00
i8259.c KVM: Convert i8254/i8259 locks to raw_spinlocks 2010-03-01 12:36:12 -03:00
irq.c KVM: Remove irq_pending bitmap 2009-06-10 11:48:57 +03:00
irq.h KVM: Convert i8254/i8259 locks to raw_spinlocks 2010-03-01 12:36:12 -03:00
Kconfig KVM: Add KVM_MMIO kconfig item 2010-03-01 12:35:41 -03:00
kvm_cache_regs.h KVM: Optimize kvm_read_cr[04]_bits() 2010-03-01 12:36:05 -03:00
kvm_timer.h KVM: Use pointer to vcpu instead of vcpu_id in timer code. 2009-09-10 08:32:52 +03:00
lapic.c KVM: Add HYPER-V apic access MSRs 2010-03-01 12:36:00 -03:00
lapic.h KVM: Add HYPER-V apic access MSRs 2010-03-01 12:36:00 -03:00
Makefile KVM: Move assigned device code to own file 2009-12-03 09:32:09 +02:00
mmu.c KVM: x86 emulator: fix memory access during x86 emulation 2010-03-01 12:36:11 -03:00
mmu.h KVM: x86 emulator: fix memory access during x86 emulation 2010-03-01 12:36:11 -03:00
mmutrace.h KVM: Trace shadow page lifecycle 2009-09-10 08:33:10 +03:00
paging_tmpl.h KVM: x86 emulator: fix memory access during x86 emulation 2010-03-01 12:36:11 -03:00
svm.c KVM: Trace failed msr reads and writes 2010-03-01 12:36:06 -03:00
timer.c KVM: Drop useless atomic test from timer function 2009-09-10 08:32:57 +03:00
trace.h KVM: Trace failed msr reads and writes 2010-03-01 12:36:06 -03:00
tss.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
vmx.c KVM: VMX: Rename VMX_EPT_IGMT_BIT to VMX_EPT_IPAT_BIT 2010-03-01 12:36:09 -03:00
x86.c KVM: Fix load_guest_segment_descriptor() to inject page fault 2010-03-01 12:36:13 -03:00
x86.h KVM: Rename vcpu->shadow_efer to efer 2010-03-01 12:36:04 -03:00