[PULL 00/41] ppc patch queue 2014-05-30

Alexander Graf
2014-05-30T12:42:59Z

Hi Paolo / Marcelo,

This is my current patch queue for ppc. Please pull.

Alex

The following changes since commit 1f854112553a1d65363ab27d4ee3dfb4b27075fb:

KVM: vmx: DR7 masking on task switch emulation is wrong (2014-05-22 17:47:18 +0200)

are available in the git repository at:

git://github.com/agraf/linux-2.6.git tags/signed-kvm-ppc-next

for you to fetch changes up to d8d164a9850d486cc48081c18831680254688d0f:

KVM: PPC: Book3S PR: Rework SLB switching code (2014-05-30 14:26:30 +0200)

----------------------------------------------------------------
Patch queue for ppc - 2014-05-30

In this round we have a few nice gems. PR KVM gains initial POWER8 support
as well as LE host awareness, ihe e500 targets can now properly run u-boot,
LE guests now work with PR KVM including KVM hypercalls and HV KVM guests
can now use huge pages.

On top of this there are some bug fixes.

----------------------------------------------------------------
Alexander Graf (27):
KVM: PPC: E500: Ignore L1CSR1_ICFI,ICLFR
KVM: PPC: E500: Add dcbtls emulation
KVM: PPC: Book3S: PR: Fix C/R bit setting
KVM: PPC: Book3S_32: PR: Access HTAB in big endian
KVM: PPC: Book3S_64 PR: Access HTAB in big endian
KVM: PPC: Book3S_64 PR: Access shadow slb in big endian
KVM: PPC: Book3S PR: Default to big endian guest
KVM: PPC: Book3S PR: PAPR: Access HTAB in big endian
KVM: PPC: Book3S PR: PAPR: Access RTAS in big endian
KVM: PPC: PR: Fill pvinfo hcall instructions in big endian
KVM: PPC: Make shared struct aka magic page guest endian
KVM: PPC: Book3S PR: Do dcbz32 patching with big endian instructions
KVM: PPC: Book3S: Move little endian conflict to HV KVM
KVM: PPC: Book3S PR: Ignore PMU SPRs
KVM: PPC: Book3S PR: Emulate TIR register
KVM: PPC: Book3S PR: Handle Facility interrupt and FSCR
KVM: PPC: Book3S PR: Expose TAR facility to guest
KVM: PPC: Book3S PR: Expose EBB registers
KVM: PPC: Book3S PR: Expose TM registers
KVM: PPC: Disable NX for old magic page using guests
PPC: KVM: Make NX bit available with magic page
PPC: ePAPR: Fix hypercall on LE guest
KVM: PPC: Graciously fail broken LE hypercalls
KVM: PPC: MPIC: Reset IRQ source private members
KVM: PPC: Add CAP to indicate hcall fixes
KVM: PPC: Book3S PR: Use SLB entry 0
KVM: PPC: Book3S PR: Rework SLB switching code

Alexey Kardashevskiy (1):
KVM: PPC: Book3S HV: Fix dirty map for hugepages

Aneesh Kumar K.V (6):
KVM: PPC: BOOK3S: PR: Enable Little Endian PR guest
KVM: PPC: BOOK3S: PR: Fix WARN_ON with debug options on
KVM: PPC: BOOK3S: HV: Prefer CMA region for hash page table allocation
KVM: PPC: BOOK3S: HV: Add mixed page-size support for guest
KVM: PPC: BOOK3S: Always use the saved DAR value
KVM: PPC: BOOK3S: Remove open coded make_dsisr in alignment handler

Paul Mackerras (7):
KVM: PPC: Book3S: Add ONE_REG register names that were missed
KVM: PPC: Book3S: Move KVM_REG_PPC_WORT to an unused register number
KVM: PPC: Book3S HV: Fix check for running inside guest in global_invalidates()
KVM: PPC: Book3S HV: Put huge-page HPTEs in rmap chain for base address
KVM: PPC: Book3S HV: Make sure we don't miss dirty pages
KVM: PPC: Book3S HV: Work around POWER8 performance monitor bugs
KVM: PPC: Book3S HV: Fix machine check delivery to guest

Documentation/virtual/kvm/api.txt | 6 +
Documentation/virtual/kvm/ppc-pv.txt | 14 ++
arch/powerpc/include/asm/disassemble.h | 34 +++++
arch/powerpc/include/asm/kvm_asm.h | 18 ++-
arch/powerpc/include/asm/kvm_book3s.h | 3 +-
arch/powerpc/include/asm/kvm_book3s_64.h | 146 +++++++++++++++---
arch/powerpc/include/asm/kvm_book3s_asm.h | 2 +
arch/powerpc/include/asm/kvm_booke.h | 5 -
arch/powerpc/include/asm/kvm_host.h | 9 +-
arch/powerpc/include/asm/kvm_ppc.h | 80 +++++++++-
arch/powerpc/include/asm/reg.h | 12 +-
arch/powerpc/include/asm/reg_booke.h | 1 +
arch/powerpc/include/uapi/asm/kvm.h | 2 +-
arch/powerpc/include/uapi/asm/kvm_para.h | 6 +
arch/powerpc/kernel/align.c | 34 +----
arch/powerpc/kernel/asm-offsets.c | 11 +-
arch/powerpc/kernel/epapr_paravirt.c | 5 +-
arch/powerpc/kernel/kvm.c | 2 +-
arch/powerpc/kernel/paca.c | 3 +
arch/powerpc/kvm/Kconfig | 2 +-
arch/powerpc/kvm/book3s.c | 106 ++++++++-----
arch/powerpc/kvm/book3s_32_mmu.c | 41 ++---
arch/powerpc/kvm/book3s_32_mmu_host.c | 4 +-
arch/powerpc/kvm/book3s_64_mmu.c | 39 +++--
arch/powerpc/kvm/book3s_64_mmu_host.c | 15 +-
arch/powerpc/kvm/book3s_64_mmu_hv.c | 116 ++++++++++-----
arch/powerpc/kvm/book3s_64_slb.S | 87 +++++------
arch/powerpc/kvm/book3s_emulate.c | 156 +++++++++++++-------
arch/powerpc/kvm/book3s_exports.c | 1 +
arch/powerpc/kvm/book3s_hv.c | 48 +++---
arch/powerpc/kvm/book3s_hv_rm_mmu.c | 3 +-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 60 +++++++-
arch/powerpc/kvm/book3s_interrupts.S | 23 ++-
arch/powerpc/kvm/book3s_paired_singles.c | 16 +-
arch/powerpc/kvm/book3s_pr.c | 238 ++++++++++++++++++++++++------
arch/powerpc/kvm/book3s_pr_papr.c | 16 +-
arch/powerpc/kvm/book3s_rtas.c | 29 ++++
arch/powerpc/kvm/book3s_segment.S | 25 ++++
arch/powerpc/kvm/e500_emulate.c | 15 ++
arch/powerpc/kvm/emulate.c | 24 +--
arch/powerpc/kvm/mpic.c | 5 +-
arch/powerpc/kvm/powerpc.c | 64 ++++++--
arch/powerpc/kvm/trace_pr.h | 2 +-
arch/powerpc/mm/slb.c | 2 +-
include/uapi/linux/kvm.h | 1 +
45 files changed, 1116 insertions(+), 415 deletions(-)