KVM: PPC: BOOK3S: PR: Ignore UAMOR SPR
authorAneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Fri, 27 Nov 2020 04:44:04 +0000 (10:14 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 3 Dec 2020 14:01:24 +0000 (01:01 +1100)
With power7 and above we expect the cpu to support keys. The
number of keys are firmware controlled based on device tree.
PR KVM do not expose key details via device tree. Hence when running with PR KVM
we do run with MMU_FTR_KEY support disabled. But we can still
get updates on UAMOR. Hence ignore access to them and for mfstpr return
0 indicating no AMR/IAMR update is no allowed.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20201127044424.40686-3-aneesh.kumar@linux.ibm.com
arch/powerpc/kvm/book3s_emulate.c

index 0effd48..b08cc15 100644 (file)
@@ -840,6 +840,9 @@ int kvmppc_core_emulate_mtspr_pr(struct kvm_vcpu *vcpu, int sprn, ulong spr_val)
        case SPRN_MMCR1:
        case SPRN_MMCR2:
        case SPRN_UMMCR2:
+       case SPRN_UAMOR:
+       case SPRN_IAMR:
+       case SPRN_AMR:
 #endif
                break;
 unprivileged:
@@ -1004,6 +1007,9 @@ int kvmppc_core_emulate_mfspr_pr(struct kvm_vcpu *vcpu, int sprn, ulong *spr_val
        case SPRN_MMCR2:
        case SPRN_UMMCR2:
        case SPRN_TIR:
+       case SPRN_UAMOR:
+       case SPRN_IAMR:
+       case SPRN_AMR:
 #endif
                *spr_val = 0;
                break;