linux-stable/arch/x86/kvm
Amit Shah 401d10dee0 KVM: VMX: Update necessary state when guest enters long mode
setup_msrs() should be called when entering long mode to save the
shadow state for the 64-bit guest state.

Using vmx_set_efer() in enter_lmode() removes some duplicated code
and also ensures we call setup_msrs(). We can safely pass the value
of shadow_efer to vmx_set_efer() as no other bits in the efer change
while enabling long mode (guest first sets EFER.LME, then sets CR0.PG
which causes a vmexit where we activate long mode).

With this fix, is_long_mode() can check for EFER.LMA set instead of
EFER.LME and 5e23049e86dd298b72e206b420513dbc3a240cd9 can be reverted.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2009-03-24 11:03:13 +02:00
..
i8254.c KVM: Reset PIT irq injection logic when the PIT IRQ is unmasked 2009-03-24 11:03:03 +02:00
i8254.h KVM: Reset PIT irq injection logic when the PIT IRQ is unmasked 2009-03-24 11:03:03 +02:00
i8259.c KVM: Report IRQ injection status to userspace. 2009-03-24 11:03:11 +02:00
irq.c KVM: x86: fix LAPIC pending count calculation 2009-02-15 02:47:38 +02:00
irq.h KVM: make irq ack notifications aware of routing table 2009-03-24 11:03:08 +02:00
Kconfig KVM: Add CONFIG_HAVE_KVM_IRQCHIP 2009-03-24 11:03:02 +02:00
kvm_cache_regs.h KVM: x86: accessors for guest registers 2008-10-15 10:13:57 +02:00
kvm_svm.h KVM: x86: Virtualize debug registers 2009-03-24 11:02:49 +02:00
lapic.c KVM: x86: fix LAPIC pending count calculation 2009-02-15 02:47:38 +02:00
lapic.h KVM: x86: fix LAPIC pending count calculation 2009-02-15 02:47:38 +02:00
Makefile KVM: change KVM to use IOMMU API 2009-01-03 14:11:07 +01:00
mmu.c KVM: MMU: remove assertion in kvm_mmu_alloc_page 2009-03-24 11:03:10 +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: Fix another largepage memory leak 2009-03-24 11:03:11 +02:00
svm.c KVM: SVM: set accessed bit for VMCB segment selectors 2009-03-24 11:03:11 +02:00
tss.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
vmx.c KVM: VMX: Update necessary state when guest enters long mode 2009-03-24 11:03:13 +02:00
x86.c KVM: Report IRQ injection status to userspace. 2009-03-24 11:03:11 +02:00
x86.h KVM: Add a pending interrupt queue 2008-10-15 10:15:13 +02:00
x86_emulate.c KVM: x86 emulator: implement 'ret far' instruction (opcode 0xcb) 2009-03-24 11:03:01 +02:00