linux/arch/powerpc/kvm
Alexander Graf 666e7252a1 KVM: PPC: Convert MSR to shared page
One of the most obvious registers to share with the guest directly is the
MSR. The MSR contains the "interrupts enabled" flag which the guest has to
toggle in critical sections.

So in order to bring the overhead of interrupt en- and disabling down, let's
put msr into the shared page. Keep in mind that even though you can fully read
its contents, writing to it doesn't always update all state. There are a few
safe fields that don't require hypervisor interaction. See the documentation
for a list of MSR bits that are safe to be set from inside the guest.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
2010-10-24 10:50:43 +02:00
..
44x_emulate.c
44x_tlb.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
44x_tlb.h
44x.c KVM: PPC: Introduce shared page 2010-10-24 10:50:42 +02:00
book3s_32_mmu_host.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_32_mmu.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_32_sr.S KVM: PPC: Add SR swapping code 2010-05-17 12:18:17 +03:00
book3s_64_mmu_host.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_64_mmu.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_64_slb.S KVM: PPC: Make SLB switching code the new segment framework 2010-05-17 12:18:38 +03:00
book3s_emulate.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_exports.c KVM: PPC: Name generic 64-bit code generic 2010-05-17 12:18:14 +03:00
book3s_interrupts.S KVM: PPC: Make Performance Counters work 2010-05-17 12:18:57 +03:00
book3s_mmu_hpte.c KVM: PPC: Add generic hpte management functions 2010-08-01 10:47:27 +03:00
book3s_paired_singles.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
book3s_rmhandlers.S KVM: PPC: Add Book3S compatibility code 2010-05-17 12:18:46 +03:00
book3s_segment.S KVM: PPC: Make Alignment interrupts work again 2010-05-17 12:19:00 +03:00
book3s.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
booke_emulate.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
booke_interrupts.S KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
booke.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
booke.h KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
e500_emulate.c
e500_tlb.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
e500_tlb.h KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
e500.c KVM: PPC: Introduce shared page 2010-10-24 10:50:42 +02:00
emulate.c KVM: PPC: Remove fetch fail code 2010-05-17 12:18:41 +03:00
fpu.S KVM: PPC: elide struct thread_struct instances from stack 2010-08-01 10:39:24 +03:00
Kconfig KVM: PPC: Enable Book3S_32 KVM building 2010-05-17 12:18:54 +03:00
Makefile KVM: PPC: Make use of hash based Shadow MMU 2010-08-01 10:47:28 +03:00
powerpc.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
timing.c powerpc: Remove unnecessary casts of private_data 2010-07-31 14:56:31 +10:00
timing.h
trace.h