spapr: Simplify some warning printing paths in spapr_caps.c

We obviously only want to print a warning in these cases, but this is done
in a rather convoluted manner. Just use warn_report() instead.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <159188281098.70166.18387926536399257573.stgit@bahia.lan>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Laurent Vivier <lvivier@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
Greg Kurz 2020-06-11 15:40:11 +02:00 committed by David Gibson
parent 63d211993b
commit a816f2d6b8
1 changed files with 6 additions and 22 deletions

View File

@ -248,23 +248,18 @@ SpaprCapPossible cap_cfpc_possible = {
static void cap_safe_cache_apply(SpaprMachineState *spapr, uint8_t val, static void cap_safe_cache_apply(SpaprMachineState *spapr, uint8_t val,
Error **errp) Error **errp)
{ {
Error *local_err = NULL;
uint8_t kvm_val = kvmppc_get_cap_safe_cache(); uint8_t kvm_val = kvmppc_get_cap_safe_cache();
if (tcg_enabled() && val) { if (tcg_enabled() && val) {
/* TCG only supports broken, allow other values and print a warning */ /* TCG only supports broken, allow other values and print a warning */
error_setg(&local_err, warn_report("TCG doesn't support requested feature, cap-cfpc=%s",
"TCG doesn't support requested feature, cap-cfpc=%s", cap_cfpc_possible.vals[val]);
cap_cfpc_possible.vals[val]);
} else if (kvm_enabled() && (val > kvm_val)) { } else if (kvm_enabled() && (val > kvm_val)) {
error_setg(errp, error_setg(errp,
"Requested safe cache capability level not supported by kvm," "Requested safe cache capability level not supported by kvm,"
" try appending -machine cap-cfpc=%s", " try appending -machine cap-cfpc=%s",
cap_cfpc_possible.vals[kvm_val]); cap_cfpc_possible.vals[kvm_val]);
} }
if (local_err != NULL)
warn_report_err(local_err);
} }
SpaprCapPossible cap_sbbc_possible = { SpaprCapPossible cap_sbbc_possible = {
@ -277,23 +272,18 @@ SpaprCapPossible cap_sbbc_possible = {
static void cap_safe_bounds_check_apply(SpaprMachineState *spapr, uint8_t val, static void cap_safe_bounds_check_apply(SpaprMachineState *spapr, uint8_t val,
Error **errp) Error **errp)
{ {
Error *local_err = NULL;
uint8_t kvm_val = kvmppc_get_cap_safe_bounds_check(); uint8_t kvm_val = kvmppc_get_cap_safe_bounds_check();
if (tcg_enabled() && val) { if (tcg_enabled() && val) {
/* TCG only supports broken, allow other values and print a warning */ /* TCG only supports broken, allow other values and print a warning */
error_setg(&local_err, warn_report("TCG doesn't support requested feature, cap-sbbc=%s",
"TCG doesn't support requested feature, cap-sbbc=%s", cap_sbbc_possible.vals[val]);
cap_sbbc_possible.vals[val]);
} else if (kvm_enabled() && (val > kvm_val)) { } else if (kvm_enabled() && (val > kvm_val)) {
error_setg(errp, error_setg(errp,
"Requested safe bounds check capability level not supported by kvm," "Requested safe bounds check capability level not supported by kvm,"
" try appending -machine cap-sbbc=%s", " try appending -machine cap-sbbc=%s",
cap_sbbc_possible.vals[kvm_val]); cap_sbbc_possible.vals[kvm_val]);
} }
if (local_err != NULL)
warn_report_err(local_err);
} }
SpaprCapPossible cap_ibs_possible = { SpaprCapPossible cap_ibs_possible = {
@ -309,24 +299,18 @@ SpaprCapPossible cap_ibs_possible = {
static void cap_safe_indirect_branch_apply(SpaprMachineState *spapr, static void cap_safe_indirect_branch_apply(SpaprMachineState *spapr,
uint8_t val, Error **errp) uint8_t val, Error **errp)
{ {
Error *local_err = NULL;
uint8_t kvm_val = kvmppc_get_cap_safe_indirect_branch(); uint8_t kvm_val = kvmppc_get_cap_safe_indirect_branch();
if (tcg_enabled() && val) { if (tcg_enabled() && val) {
/* TCG only supports broken, allow other values and print a warning */ /* TCG only supports broken, allow other values and print a warning */
error_setg(&local_err, warn_report("TCG doesn't support requested feature, cap-ibs=%s",
"TCG doesn't support requested feature, cap-ibs=%s", cap_ibs_possible.vals[val]);
cap_ibs_possible.vals[val]);
} else if (kvm_enabled() && (val > kvm_val)) { } else if (kvm_enabled() && (val > kvm_val)) {
error_setg(errp, error_setg(errp,
"Requested safe indirect branch capability level not supported by kvm," "Requested safe indirect branch capability level not supported by kvm,"
" try appending -machine cap-ibs=%s", " try appending -machine cap-ibs=%s",
cap_ibs_possible.vals[kvm_val]); cap_ibs_possible.vals[kvm_val]);
} }
if (local_err != NULL) {
warn_report_err(local_err);
}
} }
#define VALUE_DESC_TRISTATE " (broken, workaround, fixed)" #define VALUE_DESC_TRISTATE " (broken, workaround, fixed)"