diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2015-12-11 12:26:47 +0100 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2015-12-11 12:26:47 +0100 |
commit | e307beca2e24b58afa836d69ebbfecdd9cb832f1 (patch) | |
tree | ffcc5136c7706dfb5f21fd51a2a3a0630d3099d4 /arch | |
parent | 8b89fe1f6c430589122542f228a802d34995bebd (diff) | |
parent | c20875a3e638e4a03e099b343ec798edd1af5cc6 (diff) | |
download | linux-e307beca2e24b58afa836d69ebbfecdd9cb832f1.tar.bz2 |
Merge branch 'kvm-ppc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc into kvm-master
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kvm/book3s_hv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c index 54b45b73195f..a7352b59e6f9 100644 --- a/arch/powerpc/kvm/book3s_hv.c +++ b/arch/powerpc/kvm/book3s_hv.c @@ -224,6 +224,12 @@ static void kvmppc_core_vcpu_put_hv(struct kvm_vcpu *vcpu) static void kvmppc_set_msr_hv(struct kvm_vcpu *vcpu, u64 msr) { + /* + * Check for illegal transactional state bit combination + * and if we find it, force the TS field to a safe state. + */ + if ((msr & MSR_TS_MASK) == MSR_TS_MASK) + msr &= ~MSR_TS_MASK; vcpu->arch.shregs.msr = msr; kvmppc_end_cede(vcpu); } |