linux/arch/x86/kvm
Avi Kivity 3d000db568 KVM: MMU: Add generic shadow walker
We currently walk the shadow page tables in two places: direct map (for
real mode and two dimensional paging) and paging mode shadow.  Since we
anticipate requiring a third walk (for invlpg), it makes sense to have
a generic facility for shadow walk.

This patch adds such a shadow walker, walks the page tables and calls a
method for every spte encountered.  The method can examine the spte,
modify it, or even instantiate it.  The walk can be aborted by returning
nonzero from the method.

Signed-off-by: Avi Kivity <avi@qumranet.com>
2008-10-15 10:15:23 +02:00
..
i8254.c KVM: make irq ack notifier functions static 2008-10-15 10:15:21 +02:00
i8254.h KVM: PIT: fix injection logic and count 2008-10-15 10:15:17 +02:00
i8259.c KVM: fix i8259 reset irq acking 2008-10-15 10:15:19 +02:00
irq.c KVM: PIT: fix injection logic and count 2008-10-15 10:15:17 +02:00
irq.h KVM: irq ack notification 2008-10-15 10:15:16 +02:00
Kconfig mmu-notifiers: core 2008-07-28 16:30:21 -07:00
kvm_cache_regs.h KVM: x86: accessors for guest registers 2008-10-15 10:13:57 +02:00
kvm_svm.h KVM: SVM: allocate the MSR permission map per VCPU 2008-04-27 11:53:21 +03:00
lapic.c KVM: irq ack notification 2008-10-15 10:15:16 +02:00
lapic.h KVM: add statics were possible, function definition in lapic.h 2008-07-20 12:40:46 +03:00
Makefile KVM: Add coalesced MMIO support (x86 part) 2008-07-20 12:42:31 +03:00
mmu.c KVM: MMU: Add generic shadow walker 2008-10-15 10:15:23 +02:00
mmu.h KVM: MMU: Fix false flooding when a pte points to page table 2008-07-20 12:40:50 +03:00
paging_tmpl.h KVM: MMU: Move SHADOW_PT_INDEX to mmu.c 2008-10-15 10:15:22 +02:00
svm.c KVM: SVM: Fix typo 2008-10-15 10:15:20 +02:00
svm.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
tss.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
vmx.c KVM: VMX: Change segment dpl at reset to 3 2008-10-15 10:15:21 +02:00
vmx.h KVM: VMX: Rename misnamed msr bits 2008-10-15 10:13:57 +02:00
x86_emulate.c KVM: x86 emulator: remove bad ByteOp specifier from NEG descriptor 2008-10-15 10:15:22 +02:00
x86.c KVM: Load real mode segments correctly 2008-10-15 10:15:21 +02:00
x86.h KVM: Add a pending interrupt queue 2008-10-15 10:15:13 +02:00