projects/linux·commit 7b5e0a4e

Merge branch 'kvm-ppc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc into kvm-master

7b5e0a4e · Paolo Bonzini <[email protected]> · 2017-07-26 15:19:01 +02:00

Two commits which fix host crashes.

Signed-off-by: Paolo BOnzini <[email protected]>
Commit
7b5e0a4e82bf5a451b57586cd4401f0907fcf68c
Parents
1d518c68 · ef427198

Merge commit. Changes below are compared with the first parent: 1d518c68.

Changes

2 files changed · +5 −1

FileStatusAddDelContent
arch/powerpc/kvm/book3s_64_mmu_hv.cmodified+3−1View file
arch/powerpc/kvm/book3s_hv.cmodified+2−0View file

arch/powerpc/kvm/book3s_64_mmu_hv.c

View file
diff --git a/arch/powerpc/kvm/book3s_64_mmu_hv.c b/arch/powerpc/kvm/book3s_64_mmu_hv.c
index 8cb0190..b42812e 100644
--- a/arch/powerpc/kvm/book3s_64_mmu_hv.c
+++ b/arch/powerpc/kvm/book3s_64_mmu_hv.c
@@ -164,8 +164,10 @@ long kvmppc_alloc_reset_hpt(struct kvm *kvm, int order)
goto out;
}
- if (kvm->arch.hpt.virt)
+ if (kvm->arch.hpt.virt) {
kvmppc_free_hpt(&kvm->arch.hpt);
+ kvmppc_rmap_reset(kvm);
+ }
err = kvmppc_allocate_hpt(&info, order);
if (err < 0)

arch/powerpc/kvm/book3s_hv.c

View file
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
index 0b436df..359c79c 100644
--- a/arch/powerpc/kvm/book3s_hv.c
+++ b/arch/powerpc/kvm/book3s_hv.c
@@ -3211,6 +3211,8 @@ static int kvmppc_vcpu_run_hv(struct kvm_run *run, struct kvm_vcpu *vcpu)
run->fail_entry.hardware_entry_failure_reason = 0;
return -EINVAL;
}
+ /* Enable TM so we can read the TM SPRs */
+ mtmsr(mfmsr() | MSR_TM);
current->thread.tm_tfhar = mfspr(SPRN_TFHAR);
current->thread.tm_tfiar = mfspr(SPRN_TFIAR);
current->thread.tm_texasr = mfspr(SPRN_TEXASR);