From: Paul Mackerras <paulus@ozlabs.org>
To: kvm-ppc@vger.kernel.org
Subject: [GIT PULL] Please pull my kvm-ppc-next-4.18-2 tag
Date: Wed, 13 Jun 2018 05:51:21 +0000 [thread overview]
Message-ID: <20180613055121.GA1850@fergus.ozlabs.ibm.com> (raw)
In-Reply-To: <20180119044850.GA10633@fergus.ozlabs.ibm.com>
Hi Paolo,
It seems my previous pull request of 4 June might have got missed, or
buried in your inbox. In any case, I have added some more fixes to my
kvm-ppc-next branch, and if you could pull the kvm-ppc-next-4.18-2 tag
and push that to Linus for 4.18, that would be very much appreciated.
I have checked that this branch merges cleanly with Linus' current
tree and boots and runs KVM successfully on POWER8 and POWER9.
This update is quite large; it includes a series to reimplement how we
do MMIO instruction emulation to use more of the common powerpc kernel
infrastructure, a series to improve radix page table handling on
POWER9, a series to add transactional memory support to PR KVM, plus
quite a few bug fixes.
Thanks,
Paul.
The following changes since commit df158189dbcc2e0ee29dc4b917d45ee5bf25a35e:
KVM: PPC: Book 3S HV: Do ptesync in radix guest exit path (2018-05-17 15:17:13 +1000)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc tags/kvm-ppc-next-4.18-2
for you to fetch changes up to f61e0d3cc4aee194014074471658a5a037e311ce:
KVM: PPC: Book3S PR: Fix failure status setting in tabort. emulation (2018-06-13 09:46:13 +1000)
----------------------------------------------------------------
PPC KVM update for 4.18
* Reimplement MMIO instruction emulation using analyse_instr, which avoids
duplication of the instruction decoder and reduces code size.
* PR KVM improvements: implement support for transactional memory,
and enable PR KVM on POWER9 guests running in HPT mode, plus
quite a few bug-fixes.
* Radix page table improvements for POWER9.
* Improvements and bugfixes for IOMMU (TCE) support.
* Other miscellaneous fixes.
----------------------------------------------------------------
Alexey Kardashevskiy (3):
KVM: PPC: Book3S: Use correct page shift in H_STUFF_TCE
KVM: PPC: Book3S: Allow backing bigger guest IOMMU pages with smaller physical pages
KVM: PPC: Book3S: Check KVM_CREATE_SPAPR_TCE_64 parameters
Aneesh Kumar K.V (1):
powerpc/kvm: Switch kvm pmd allocator to custom allocator
Cameron Kaiser (1):
KVM: PPC: Book3S PR: Handle additional interrupt types
Mathieu Malaterre (1):
powerpc/kvm: Prefer fault_in_pages_readable function
Nicholas Piggin (10):
powerpc/mm/radix: implement LPID based TLB flushes to be used by KVM
KVM: PPC: Book3S HV: Lockless tlbie for HPT hcalls
KVM: PPC: Book3S HV: Use a helper to unmap ptes in the radix fault path
KVM: PPC: Book3S HV: Recursively unmap all page table entries when unmapping
KVM: PPC: Book3S HV: Make radix use the Linux translation flush functions for partition scope
KVM: PPC: Book3S HV: Make radix handle process scoped LPID flush in C, with relocation on
KVM: PPC: Book3S HV: radix: Refine IO region partition scope attributes
KVM: PPC: Book3S HV: radix: Do not clear partition PTE when RC or write bits do not match
KVM: PPC: Book3S HV: Fix kvmppc_bad_host_intr for real mode interrupts
KVM: PPC: Book3S HV: Send kvmppc_bad_interrupt NMIs to Linux handlers
Paul Mackerras (12):
KVM: PPC: Book3S HV: Add 'online' register to ONE_REG interface
KVM: PPC: Book3S HV: Set RWMR on POWER8 so PURR/SPURR count correctly
KVM: PPC: Book3S HV: Fix inaccurate comment
Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next
KVM: PPC: Book3S PR: Enable use on POWER9 inside HPT-mode guests
KVM: PPC: Book3S PR: Allow KVM_PPC_CONFIGURE_V3_MMU to succeed
KVM: PPC: Book3S HV: Factor fake-suspend handling out of kvmppc_save/restore_tm
Merge remote-tracking branch 'remotes/powerpc/topic/ppc-kvm' into kvm-ppc-next
KVM: PPC: Book3S PR: Fix MSR setting when delivering interrupts
KVM: PPC: Book3S PR: Fix failure status setting in treclaim. emulation
KVM: PPC: Book3S PR: Don't let PAPR guest set MSR hypervisor bit
KVM: PPC: Book3S PR: Enable use on POWER9 bare-metal hosts in HPT mode
Simon Guo (40):
KVM: PPC: Add pt_regs into kvm_vcpu_arch and move vcpu->arch.gpr[] into it
KVM: PPC: Move nip/ctr/lr/xer registers to pt_regs in kvm_vcpu_arch
KVM: PPC: Fix a mmio_host_swabbed uninitialized usage issue
KVM: PPC: Add KVMPPC_VSX_COPY_WORD_LOAD_DUMP type support for mmio emulation
KVM: PPC: Reimplement non-SIMD LOAD/STORE instruction mmio emulation with analyse_instr() input
KVM: PPC: Add giveup_ext() hook to PPC KVM ops
KVM: PPC: Reimplement LOAD_FP/STORE_FP instruction mmio emulation with analyse_instr() input
KVM: PPC: Reimplement LOAD_VSX/STORE_VSX instruction mmio emulation with analyse_instr() input
KVM: PPC: Expand mmio_vsx_copy_type to cover VMX load/store element types
KVM: PPC: Reimplement LOAD_VMX/STORE_VMX instruction mmio emulation with analyse_instr() input
powerpc: Export msr_check_and_set() to modules
powerpc/reg: Add TEXASR related macros
powerpc: Export tm_enable()/tm_disable/tm_abort() APIs
KVM: PPC: Book3S PR: Move kvmppc_save_tm/kvmppc_restore_tm to separate file
KVM: PPC: Book3S PR: Add guest MSR parameter for kvmppc_save_tm()/kvmppc_restore_tm()
KVM: PPC: Book3S PR: Turn on FP/VSX/VMX MSR bits in kvmppc_save_tm()
KVM: PPC: Book3S PR: Add C function wrapper for _kvmppc_save/restore_tm()
KVM: PPC: Book3S PR: Transition to Suspended state when injecting interrupt
KVM: PPC: Book3S PR: Pass through MSR TM and TS bits to shadow_msr
KVM: PPC: Book3S PR: Sync TM bits to shadow msr for problem state guest
KVM: PPC: Book3S PR: Implement RFID TM behavior to suppress change from S0 to N0
KVM: PPC: Book3S PR: Avoid changing TS bits when exiting guest
KVM: PPC: Book3S PR: Add new kvmppc_copyto/from_vcpu_tm APIs
KVM: PPC: Book3S PR: Add kvmppc_save/restore_tm_sprs() APIs
KVM: PPC: Book3S PR: Add transaction memory save/restore skeleton
KVM: PPC: Book3S PR: Add math support for PR KVM HTM
KVM: PPC: Book3S PR: Emulate mtspr/mfspr using active TM SPRs
KVM: PPC: Book3S PR: Always fail transactions in guest privileged state
KVM: PPC: Book3S PR: Restore NV regs after emulating mfspr from TM SPRs
KVM: PPC: Book3S PR: Add emulation for treclaim.
KVM: PPC: Book3S PR: Add emulation for trechkpt.
KVM: PPC: Book3S PR: Add emulation for tabort. in privileged state
KVM: PPC: Book3S PR: Add guard code to prevent returning to guest with PR=0 and Transactional state
KVM: PPC: Book3S PR: Support TAR handling for PR KVM HTM
KVM: PPC: Book3S PR: Enable HTM for PR KVM for KVM_CHECK_EXTENSION ioctl
KVM: PPC: Move vcpu_load/vcpu_put down to each ioctl case in kvm_arch_vcpu_ioctl
KVM: PPC: Remove load/put vcpu for KVM_GET/SET_ONE_REG ioctl
KVM: PPC: Book3S: Remove load/put vcpu for KVM_GET_REGS/KVM_SET_REGS
KVM: PPC: Book3S PR: Enable kvmppc_get/set_one_reg_pr() for HTM registers
KVM: PPC: Book3S PR: Fix failure status setting in tabort. emulation
Souptick Joarder (1):
KVM: PPC: Book3S: Change return type to vm_fault_t
arch/powerpc/include/asm/asm-prototypes.h | 9 +
.../powerpc/include/asm/book3s/64/tlbflush-radix.h | 7 +
arch/powerpc/include/asm/kvm_book3s.h | 37 +-
arch/powerpc/include/asm/kvm_book3s_64.h | 20 +-
arch/powerpc/include/asm/kvm_booke.h | 20 +-
arch/powerpc/include/asm/kvm_host.h | 21 +-
arch/powerpc/include/asm/kvm_ppc.h | 17 +-
arch/powerpc/include/asm/reg.h | 33 +-
arch/powerpc/include/asm/tm.h | 2 -
arch/powerpc/include/uapi/asm/kvm.h | 1 +
arch/powerpc/kernel/asm-offsets.c | 18 +-
arch/powerpc/kernel/kvm.c | 4 +-
arch/powerpc/kernel/process.c | 1 +
arch/powerpc/kernel/tm.S | 12 +
arch/powerpc/kvm/Makefile | 3 +
arch/powerpc/kvm/book3s.c | 23 +-
arch/powerpc/kvm/book3s.h | 6 +
arch/powerpc/kvm/book3s_32_mmu.c | 2 +-
arch/powerpc/kvm/book3s_64_mmu.c | 11 +-
arch/powerpc/kvm/book3s_64_mmu_hv.c | 3 +
arch/powerpc/kvm/book3s_64_mmu_radix.c | 378 +++++++----
arch/powerpc/kvm/book3s_64_vio.c | 71 +-
arch/powerpc/kvm/book3s_64_vio_hv.c | 54 +-
arch/powerpc/kvm/book3s_emulate.c | 371 +++++++++-
arch/powerpc/kvm/book3s_hv.c | 97 ++-
arch/powerpc/kvm/book3s_hv_builtin.c | 21 +-
arch/powerpc/kvm/book3s_hv_interrupts.S | 2 +-
arch/powerpc/kvm/book3s_hv_rm_mmu.c | 36 +-
arch/powerpc/kvm/book3s_hv_rm_xics.c | 2 +-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 318 +++------
arch/powerpc/kvm/book3s_hv_tm.c | 10 +-
arch/powerpc/kvm/book3s_hv_tm_builtin.c | 10 +-
arch/powerpc/kvm/book3s_pr.c | 482 ++++++++++---
arch/powerpc/kvm/book3s_segment.S | 13 +
arch/powerpc/kvm/book3s_xive_template.c | 4 +-
arch/powerpc/kvm/booke.c | 41 +-
arch/powerpc/kvm/booke_emulate.c | 6 +-
arch/powerpc/kvm/e500_emulate.c | 6 +-
arch/powerpc/kvm/e500_mmu.c | 2 +-
arch/powerpc/kvm/e500_mmu_host.c | 8 +-
arch/powerpc/kvm/emulate_loadstore.c | 752 ++++++---------------
arch/powerpc/kvm/powerpc.c | 311 +++++++--
arch/powerpc/kvm/tm.S | 384 +++++++++++
arch/powerpc/mm/hash_utils_64.c | 1 +
arch/powerpc/mm/tlb-radix.c | 207 ++++++
arch/powerpc/platforms/powernv/copy-paste.h | 3 +-
46 files changed, 2598 insertions(+), 1242 deletions(-)
create mode 100644 arch/powerpc/kvm/tm.S
next prev parent reply other threads:[~2018-06-13 5:51 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-19 4:48 [GIT PULL] Please pull my kvm-ppc-next-4.16-1 tag Paul Mackerras
2018-01-19 4:48 ` Paul Mackerras
2018-02-01 15:17 ` Radim Krčmář
2018-02-01 15:17 ` Radim Krčmář
2018-03-29 5:38 ` [GIT PULL] Please pull my kvm-ppc-next-4.17-1 tag Paul Mackerras
2018-03-29 20:34 ` Radim Krčmář
2018-06-04 1:27 ` [GIT PULL] Please pull my kvm-ppc-next-4.18-1 tag Paul Mackerras
2018-06-13 5:51 ` Paul Mackerras [this message]
2018-06-13 16:22 ` Paolo Bonzini
2018-06-13 21:52 ` Paul Mackerras
2018-07-31 5:56 ` [GIT PULL] Please pull my kvm-ppc-next-4.19-1 tag Paul Mackerras
2018-08-02 11:56 ` Paolo Bonzini
2018-10-10 5:55 ` [GIT PULL] Please pull my kvm-ppc-next-4.20-1 tag Paul Mackerras
2018-10-10 16:38 ` Paolo Bonzini
2018-10-20 10:53 ` [GIT PULL] Please pull my kvm-ppc-next-4.20-2 tag Paul Mackerras
2018-10-21 9:47 ` Paolo Bonzini
2018-12-18 3:05 ` [GIT PULL] Please pull my kvm-ppc-next-4.21-1 tag Paul Mackerras
2018-12-20 13:58 ` Radim Krčmář
2018-12-21 4:24 ` [GIT PULL] Please pull my kvm-ppc-next-4.21-2 tag Paul Mackerras
2018-12-21 10:48 ` Paolo Bonzini
2018-02-09 9:41 [GIT PULL] Please pull my kvm-ppc-next-4.16-2 tag Paul Mackerras
2018-02-09 9:41 ` Paul Mackerras
2018-02-10 14:52 ` Radim Krčmář
2018-02-10 14:52 ` Radim Krčmář
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180613055121.GA1850@fergus.ozlabs.ibm.com \
--to=paulus@ozlabs.org \
--cc=kvm-ppc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.