target/s390x/cpu_model: Make check_compatibility() return boolean
As error.h suggested, the best practice for callee is to return something to indicate success / failure. With returned boolean, there's no need to check @err. Suggested-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Zhao Liu <zhao1.liu@intel.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-ID: <20240425031232.1586401-2-zhao1.liu@intel.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
5fee33d97a
commit
7c0c099a88
@ -510,7 +510,7 @@ static void check_compat_model_failed(Error **errp,
|
||||
return;
|
||||
}
|
||||
|
||||
static void check_compatibility(const S390CPUModel *max_model,
|
||||
static bool check_compatibility(const S390CPUModel *max_model,
|
||||
const S390CPUModel *model, Error **errp)
|
||||
{
|
||||
ERRP_GUARD();
|
||||
@ -518,11 +518,11 @@ static void check_compatibility(const S390CPUModel *max_model,
|
||||
|
||||
if (model->def->gen > max_model->def->gen) {
|
||||
check_compat_model_failed(errp, max_model, "Selected CPU generation is too new");
|
||||
return;
|
||||
return false;
|
||||
} else if (model->def->gen == max_model->def->gen &&
|
||||
model->def->ec_ga > max_model->def->ec_ga) {
|
||||
check_compat_model_failed(errp, max_model, "Selected CPU GA level is too new");
|
||||
return;
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
@ -530,14 +530,14 @@ static void check_compatibility(const S390CPUModel *max_model,
|
||||
error_setg(errp, "The unpack facility is not compatible with "
|
||||
"the --only-migratable option. You must remove either "
|
||||
"the 'unpack' facility or the --only-migratable option");
|
||||
return;
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* detect the missing features to properly report them */
|
||||
bitmap_andnot(missing, model->features, max_model->features, S390_FEAT_MAX);
|
||||
if (bitmap_empty(missing, S390_FEAT_MAX)) {
|
||||
return;
|
||||
return true;
|
||||
}
|
||||
|
||||
error_setg(errp, " ");
|
||||
@ -546,6 +546,7 @@ static void check_compatibility(const S390CPUModel *max_model,
|
||||
"available in the current configuration: ");
|
||||
error_append_hint(errp,
|
||||
"Consider a different accelerator, QEMU, or kernel version\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
S390CPUModel *get_max_cpu_model(Error **errp)
|
||||
@ -605,8 +606,7 @@ void s390_realize_cpu_model(CPUState *cs, Error **errp)
|
||||
cpu->model->cpu_ver = max_model->cpu_ver;
|
||||
|
||||
check_consistency(cpu->model);
|
||||
check_compatibility(max_model, cpu->model, &err);
|
||||
if (err) {
|
||||
if (!check_compatibility(max_model, cpu->model, &err)) {
|
||||
error_propagate(errp, err);
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user