aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target-s390x/cpu_models.c3
-rw-r--r--target-s390x/kvm.c6
2 files changed, 7 insertions, 2 deletions
diff --git a/target-s390x/cpu_models.c b/target-s390x/cpu_models.c
index 5b9f35ee87..d1e1a5f7c0 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 82a07ae49c..dfaf1ca8d1 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)