On 26.04.19 13:18, David Hildenbrand wrote: > On 26.04.19 13:10, Christian Borntraeger wrote: >> These facilities are deprecated and no longer needed. >> >> Signed-off-by: Christian Borntraeger <borntrae...@de.ibm.com> >> --- >> target/s390x/gen-features.c | 12 ++++++++++++ >> 1 file changed, 12 insertions(+) >> >> diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c >> index 6260f56dc1..c346b76bdf 100644 >> --- a/target/s390x/gen-features.c >> +++ b/target/s390x/gen-features.c >> @@ -13,6 +13,7 @@ >> >> #include <inttypes.h> >> #include <stdio.h> >> +#include <string.h> >> #include "cpu_features_def.h" >> >> #define ARRAY_SIZE(array) (sizeof(array) / sizeof(array[0])) >> @@ -833,6 +834,11 @@ static void set_bits(uint64_t list[], BitSpec bits) >> } >> } >> >> +static inline void clear_bit(uint64_t list[], unsigned long nr) >> +{ >> + list[nr / 64] &= ~(1ULL << (nr % 64)); >> +} >> + >> static void print_feature_defs(void) >> { >> uint64_t base_feat[S390_FEAT_MAX / 64 + 1] = {}; >> @@ -843,6 +849,12 @@ static void print_feature_defs(void) >> printf("\n/* CPU model feature list data */\n"); >> >> for (i = 0; i < ARRAY_SIZE(CpuFeatDef); i++) { >> + /* With gen15 CSSKE and BPB are deprecated */ >> + if (strcmp(CpuFeatDef[i].name, "S390_FEAT_LIST_GEN15_GA1") == 0) { >> + clear_bit(base_feat, S390_FEAT_CONDITIONAL_SSKE); >> + clear_bit(default_feat, S390_FEAT_CONDITIONAL_SSKE); >> + clear_bit(default_feat, S390_FEAT_BPB); >> + } >> set_bits(base_feat, CpuFeatDef[i].base_bits); >> /* add the base to the default features */ >> set_bits(default_feat, CpuFeatDef[i].base_bits); >> > > Can you squash that into the previous patch, so it doesn't look like the > case model is suddenly changed? can do. I wanted it to be separate for better review.