linux/arch/powerpc/kvm
Alexander Graf 8b6db3bc96 KVM: PPC: Implement correct SID mapping on Book3s_32
Up until now we were doing segment mappings wrong on Book3s_32. For Book3s_64
we were using a trick where we know that a single mmu_context gives us 16 bits
of context ids.

The mm system on Book3s_32 instead uses a clever algorithm to distribute VSIDs
across the available range, so a context id really only gives us 16 available
VSIDs.

To keep at least a few guest processes in the SID shadow, let's map a number of
contexts that we can use as VSID pool. This makes the code be actually correct
and shouldn't hurt performance too much.

Signed-off-by: Alexander Graf <agraf@suse.de>
2010-10-24 10:52:15 +02:00
..
44x_emulate.c KVM: PPC: Use accessor functions for GPR access 2010-03-01 12:35:47 -03:00
44x_tlb.c KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
44x_tlb.h KVM: ppc: rename 44x MMU functions used in booke.c 2009-03-24 11:02:56 +02:00
44x.c KVM: PPC: Introduce shared page 2010-10-24 10:50:42 +02:00
book3s_32_mmu_host.c KVM: PPC: Implement correct SID mapping on Book3s_32 2010-10-24 10:52:15 +02:00
book3s_32_mmu.c KVM: PPC: Put segment registers in shared page 2010-10-24 10:52:11 +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: Implement correct SID mapping on Book3s_32 2010-10-24 10:52:15 +02:00
book3s_64_mmu.c KVM: PPC: Magic Page Book3s support 2010-10-24 10:50:48 +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: Move BAT handling code into spr handler 2010-10-24 10:52:10 +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: Make invalidation code more reliable 2010-10-24 10:52:06 +02:00
book3s_paired_singles.c KVM: PPC: Convert DAR to shared page. 2010-10-24 10:50:45 +02:00
book3s_rmhandlers.S KVM: PPC: Make long relocations be ulong 2010-10-24 10:50:59 +02:00
book3s_segment.S KVM: PPC: Make Alignment interrupts work again 2010-05-17 12:19:00 +03:00
book3s.c KVM: PPC: Update int_pending also on dequeue 2010-10-24 10:52:14 +02:00
booke_emulate.c KVM: PPC: Convert SRR0 and SRR1 to shared page 2010-10-24 10:50:45 +02:00
booke_interrupts.S KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
booke.c KVM: PPC: Tell guest about pending interrupts 2010-10-24 10:50:46 +02:00
booke.h KVM: PPC: Convert MSR to shared page 2010-10-24 10:50:43 +02:00
e500_emulate.c KVM: PPC E500: fix tlbcfg emulation 2010-03-01 12:36:06 -03:00
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: Convert SPRG[0-4] to shared page 2010-10-24 10:50:45 +02: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: Put segment registers in shared page 2010-10-24 10:52:11 +02:00
timing.c powerpc: Remove unnecessary casts of private_data 2010-07-31 14:56:31 +10:00
timing.h KVM: powerpc: Fix BUILD_BUG_ON condition 2009-12-03 09:32:22 +02:00
trace.h KVM: PPC: Move slb debugging to tracepoints 2010-10-24 10:52:07 +02:00