From: David Hildenbrand Date: Mon, 5 Sep 2016 08:52:38 +0000 (+0200) Subject: s390x/kvm: don't enable key wrapping if msa3 is disabled X-Git-Tag: v2.8.0-rc0~159^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c85d21c73b06064ae2ae7bd49cf36dfaaae2a0a8;p=thirdparty%2Fqemu.git s390x/kvm: don't enable key wrapping if msa3 is disabled As the CPU model now controls msa3, trying to set wrapping keys without msa3 being around/enable in the kernel will produce misleading errors. So let's simply not configure key wrapping if msa3 is not enabled and make compat machines with disabled CPU model work correctly. Signed-off-by: David Hildenbrand Message-Id: <20160905085244.99980-25-dahi@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck --- diff --git a/target-s390x/cpu_models.c b/target-s390x/cpu_models.c index 5b9f35ee875..d1e1a5f7c07 100644 --- a/target-s390x/cpu_models.c +++ b/target-s390x/cpu_models.c @@ -155,6 +155,9 @@ bool s390_has_feat(S390Feat feat) if (feat == S390_FEAT_RUNTIME_INSTRUMENTATION) { return kvm_s390_get_ri(); } + if (feat == S390_FEAT_MSA_EXT_3) { + return true; + } } #endif return 0; diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c index 82a07ae49c3..dfaf1ca8d17 100644 --- a/target-s390x/kvm.c +++ b/target-s390x/kvm.c @@ -260,8 +260,10 @@ static void kvm_s390_init_dea_kw(void) void kvm_s390_crypto_reset(void) { - kvm_s390_init_aes_kw(); - kvm_s390_init_dea_kw(); + if (s390_has_feat(S390_FEAT_MSA_EXT_3)) { + kvm_s390_init_aes_kw(); + kvm_s390_init_dea_kw(); + } } int kvm_arch_init(MachineState *ms, KVMState *s)