linux/arch/powerpc/kvm
Paul Mackerras a0144e2a6b KVM: PPC: Book3S HV: Store LPCR value for each virtual core
This adds the ability to have a separate LPCR (Logical Partitioning
Control Register) value relating to a guest for each virtual core,
rather than only having a single value for the whole VM.  This
corresponds to what real POWER hardware does, where there is a LPCR
per CPU thread but most of the fields are required to have the same
value on all active threads in a core.

The per-virtual-core LPCR can be read and written using the
GET/SET_ONE_REG interface.  Userspace can can only modify the
following fields of the LPCR value:

DPFD	Default prefetch depth
ILE	Interrupt little-endian
TC	Translation control (secondary HPT hash group search disable)

We still maintain a per-VM default LPCR value in kvm->arch.lpcr, which
contains bits relating to memory management, i.e. the Virtualized
Partition Memory (VPM) bits and the bits relating to guest real mode.
When this default value is updated, the update needs to be propagated
to the per-vcore values, so we add a kvmppc_update_lpcr() helper to do
that.

Signed-off-by: Paul Mackerras <paulus@samba.org>
[agraf: fix whitespace]
Signed-off-by: Alexander Graf <agraf@suse.de>
2013-10-17 14:45:01 +02:00
..
44x_emulate.c
44x_tlb.c kvm/ppc/booke: Hold srcu lock when calling gfn functions 2013-06-11 11:10:59 +03:00
44x_tlb.h
44x.c
book3s_32_mmu_host.c
book3s_32_mmu.c
book3s_32_sr.S
book3s_64_mmu_host.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-07-04 10:29:23 -07:00
book3s_64_mmu_hv.c KVM: PPC: Book3S HV: Store LPCR value for each virtual core 2013-10-17 14:45:01 +02:00
book3s_64_mmu.c KVM: PPC: Book3S PR: Rework kvmppc_mmu_book3s_64_xlate() 2013-08-29 00:05:50 +02:00
book3s_64_slb.S powerpc: Fix little endian lppaca, slb_shadow and dtl_entry 2013-08-14 15:33:35 +10:00
book3s_64_vio_hv.c
book3s_64_vio.c ppc: kvm: use anon_inode_getfd() with O_CLOEXEC flag 2013-08-26 13:19:56 +03:00
book3s_emulate.c KVM: PPC: Book3S: Ignore DABR register 2013-07-08 16:18:20 +02:00
book3s_exports.c
book3s_hv_builtin.c powerpc/kvm: Contiguous memory allocator based RMA allocation 2013-07-08 16:20:20 +02:00
book3s_hv_cma.c powerpc/kvm: Use 256K chunk to track both RMA and hash page table allocation. 2013-07-08 16:21:13 +02:00
book3s_hv_cma.h powerpc/kvm: Use 256K chunk to track both RMA and hash page table allocation. 2013-07-08 16:21:13 +02:00
book3s_hv_interrupts.S
book3s_hv_ras.c
book3s_hv_rm_mmu.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-09-06 10:49:42 -07:00
book3s_hv_rm_xics.c KVM: PPC: Book3S HV: Add support for real mode ICP in XICS emulation 2013-04-26 20:27:32 +02:00
book3s_hv_rmhandlers.S KVM: PPC: Book3S HV: Store LPCR value for each virtual core 2013-10-17 14:45:01 +02:00
book3s_hv.c KVM: PPC: Book3S HV: Store LPCR value for each virtual core 2013-10-17 14:45:01 +02:00
book3s_interrupts.S KVM: PPC: Book3S PR: Load up SPRG3 register with guest value on guest entry 2013-07-25 15:33:09 +02:00
book3s_mmu_hpte.c
book3s_paired_singles.c
book3s_pr_papr.c powerpc/kvm/book3s: Add support for H_IPOLL and H_XIRR_X in XICS emulation 2013-06-01 08:29:27 +10:00
book3s_pr.c KVM: PPC: Book3S PR: Make instruction fetch fallback work for system calls 2013-08-28 16:47:49 +02:00
book3s_rmhandlers.S
book3s_rtas.c KVM: PPC: Book3S: Add support for ibm,int-on/off RTAS calls 2013-04-26 20:27:33 +02:00
book3s_segment.S
book3s_xics.c KVM: PPC: Book3S: Fix compile error in XICS emulation 2013-08-28 16:28:47 +02:00
book3s_xics.h KVM: PPC: Book3S: Add API for in-kernel XICS emulation 2013-05-02 15:28:36 +02:00
book3s.c KVM: PPC: Book3S: Add GET/SET_ONE_REG interface for VRSAVE 2013-10-17 14:44:59 +02:00
booke_emulate.c
booke_interrupts.S
booke.c KVM: PPC: BookE: Add GET/SET_ONE_REG interface for VRSAVE 2013-10-17 14:45:01 +02:00
booke.h
bookehv_interrupts.S
e500_emulate.c KVM: PPC: e500: Add support for EPTCFG register 2013-04-26 20:27:08 +02:00
e500_mmu_host.c
e500_mmu_host.h
e500_mmu.c kvm/ppc/booke: Hold srcu lock when calling gfn functions 2013-06-11 11:10:59 +03:00
e500.c KVM: PPC: e500: Expose MMU registers via ONE_REG 2013-04-26 20:27:06 +02:00
e500.h KVM: PPC: e500: Add support for TLBnPS registers 2013-04-26 20:27:07 +02:00
e500mc.c kvm/ppc/booke64: Disable e6500 support 2013-06-11 11:10:56 +03:00
emulate.c powerpc: Move opcode definitions from kvm/emulate.c to asm/ppc-opcode.h 2013-07-30 15:50:07 -05:00
fpu.S
irq.h KVM: PPC: Book3S: Add API for in-kernel XICS emulation 2013-05-02 15:28:36 +02:00
Kconfig powerpc/kvm: Contiguous memory allocator based hash page table allocation 2013-07-08 16:19:58 +02:00
Makefile powerpc/kvm: Contiguous memory allocator based hash page table allocation 2013-07-08 16:19:58 +02:00
mpic.c kvm/ppc/mpic: fix missing unlock in set_base_addr() 2013-05-02 15:28:35 +02:00
powerpc.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-09-05 08:50:26 -07:00
timing.c
timing.h
trace.h