mirror of https://github.com/xemu-project/xemu.git
s390x/kvm: disable cpu model for the 2.7 machine
cpu model was merged with 2.8, it is wrong to abuse ri_allowed which was enabled with 2.7. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
This commit is contained in:
parent
e3571ae30c
commit
e73316d594
|
@ -193,6 +193,7 @@ static void ccw_machine_class_init(ObjectClass *oc, void *data)
|
|||
S390CcwMachineClass *s390mc = S390_MACHINE_CLASS(mc);
|
||||
|
||||
s390mc->ri_allowed = true;
|
||||
s390mc->cpu_model_allowed = true;
|
||||
mc->init = ccw_init;
|
||||
mc->reset = s390_machine_reset;
|
||||
mc->hot_add_cpu = s390_hot_add_cpu;
|
||||
|
@ -258,6 +259,19 @@ bool ri_allowed(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
bool cpu_model_allowed(void)
|
||||
{
|
||||
MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine());
|
||||
if (object_class_dynamic_cast(OBJECT_CLASS(mc),
|
||||
TYPE_S390_CCW_MACHINE)) {
|
||||
S390CcwMachineClass *s390mc = S390_MACHINE_CLASS(mc);
|
||||
|
||||
return s390mc->cpu_model_allowed;
|
||||
}
|
||||
/* allow CPU model qmp queries with the "none" machine */
|
||||
return true;
|
||||
}
|
||||
|
||||
static inline void s390_machine_initfn(Object *obj)
|
||||
{
|
||||
object_property_add_bool(obj, "aes-key-wrap",
|
||||
|
@ -397,6 +411,9 @@ static void ccw_machine_2_7_instance_options(MachineState *machine)
|
|||
|
||||
static void ccw_machine_2_7_class_options(MachineClass *mc)
|
||||
{
|
||||
S390CcwMachineClass *s390mc = S390_MACHINE_CLASS(mc);
|
||||
|
||||
s390mc->cpu_model_allowed = false;
|
||||
ccw_machine_2_8_class_options(mc);
|
||||
SET_MACHINE_COMPAT(mc, CCW_COMPAT_2_7);
|
||||
}
|
||||
|
|
|
@ -36,9 +36,12 @@ typedef struct S390CcwMachineClass {
|
|||
|
||||
/*< public >*/
|
||||
bool ri_allowed;
|
||||
bool cpu_model_allowed;
|
||||
} S390CcwMachineClass;
|
||||
|
||||
/* runtime-instrumentation allowed by the machine */
|
||||
bool ri_allowed(void);
|
||||
/* cpu model allowed by the machine */
|
||||
bool cpu_model_allowed(void);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -2490,7 +2490,7 @@ static int configure_cpu_feat(const S390FeatBitmap features)
|
|||
|
||||
bool kvm_s390_cpu_models_supported(void)
|
||||
{
|
||||
if (!ri_allowed()) {
|
||||
if (!cpu_model_allowed()) {
|
||||
/* compatibility machines interfere with the cpu model */
|
||||
return false;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue