aboutsummaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorCollin Walling <walling@linux.ibm.com>2019-02-11 20:16:55 -0500
committerCornelia Huck <cohuck@redhat.com>2019-02-18 11:25:43 +0100
commitddf5d18af3ce3029d5b93222af5a9e8160d4c34b (patch)
tree9ce7adb314003c1a3e2f30eed689957a931e00bb /target
parentd646b16b21eca8d586dcbbd15bb47ed0387546c6 (diff)
downloadqemu-ddf5d18af3ce3029d5b93222af5a9e8160d4c34b.zip
qemu-ddf5d18af3ce3029d5b93222af5a9e8160d4c34b.tar.gz
qemu-ddf5d18af3ce3029d5b93222af5a9e8160d4c34b.tar.bz2
s390x/cpumodel: mepochptff: warn when no mepoch and re-align group init
The extended PTFF features (qsie, qtoue, stoe, stoue) are dependent on the multiple-epoch facility (mepoch). Let's print a warning if these features are enabled without mepoch. While we're at it, let's move the FEAT_GROUP_INIT for mepochptff down the s390_feature_groups list so it can be properly indexed with its generated S390FeatGroup enum. Signed-off-by: Collin Walling <walling@linux.ibm.com> Message-Id: <20190212011657.18324-1-walling@linux.ibm.com> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Reviewed-by: David Hildenbrand <david@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'target')
-rw-r--r--target/s390x/cpu_features.c2
-rw-r--r--target/s390x/cpu_models.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/target/s390x/cpu_features.c b/target/s390x/cpu_features.c
index 60cfeba..1843c84 100644
--- a/target/s390x/cpu_features.c
+++ b/target/s390x/cpu_features.c
@@ -456,7 +456,6 @@ static S390FeatGroupDef s390_feature_groups[] = {
FEAT_GROUP_INIT("plo", PLO, "Perform-locked-operation facility"),
FEAT_GROUP_INIT("tods", TOD_CLOCK_STEERING, "Tod-clock-steering facility"),
FEAT_GROUP_INIT("gen13ptff", GEN13_PTFF, "PTFF enhancements introduced with z13"),
- FEAT_GROUP_INIT("mepochptff", MULTIPLE_EPOCH_PTFF, "PTFF enhancements introduced with Multiple-epoch facility"),
FEAT_GROUP_INIT("msa", MSA, "Message-security-assist facility"),
FEAT_GROUP_INIT("msa1", MSA_EXT_1, "Message-security-assist-extension 1 facility"),
FEAT_GROUP_INIT("msa2", MSA_EXT_2, "Message-security-assist-extension 2 facility"),
@@ -466,6 +465,7 @@ static S390FeatGroupDef s390_feature_groups[] = {
FEAT_GROUP_INIT("msa6", MSA_EXT_6, "Message-security-assist-extension 6 facility"),
FEAT_GROUP_INIT("msa7", MSA_EXT_7, "Message-security-assist-extension 7 facility"),
FEAT_GROUP_INIT("msa8", MSA_EXT_8, "Message-security-assist-extension 8 facility"),
+ FEAT_GROUP_INIT("mepochptff", MULTIPLE_EPOCH_PTFF, "PTFF enhancements introduced with Multiple-epoch facility"),
};
const S390FeatGroupDef *s390_feat_group_def(S390FeatGroup group)
diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index 249011f..8002412 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -788,6 +788,10 @@ static void check_consistency(const S390CPUModel *model)
{ S390_FEAT_SIE_KSS, S390_FEAT_SIE_F2 },
{ S390_FEAT_AP_QUERY_CONFIG_INFO, S390_FEAT_AP },
{ S390_FEAT_AP_FACILITIES_TEST, S390_FEAT_AP },
+ { S390_FEAT_PTFF_QSIE, S390_FEAT_MULTIPLE_EPOCH },
+ { S390_FEAT_PTFF_QTOUE, S390_FEAT_MULTIPLE_EPOCH },
+ { S390_FEAT_PTFF_STOE, S390_FEAT_MULTIPLE_EPOCH },
+ { S390_FEAT_PTFF_STOUE, S390_FEAT_MULTIPLE_EPOCH },
};
int i;