mirror of https://github.com/xemu-project/xemu.git
ppc/xive: Fix error handling in vmstate_xive_tctx_*() callbacks
Now that kvmppc_xive_cpu_get_state() and kvmppc_xive_cpu_set_state() return negative errnos on failures, use that instead local_err because it is the recommended practice. Also return that instead of -1 since vmstate expects negative errnos. Signed-off-by: Greg Kurz <groug@kaod.org> Message-Id: <159707850840.1489912.14912810818646455474.stgit@bahia.lan> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
a845a54cbe
commit
2a8100cb61
hw/intc
|
@ -695,12 +695,13 @@ static int vmstate_xive_tctx_pre_save(void *opaque)
|
||||||
{
|
{
|
||||||
XiveTCTX *tctx = XIVE_TCTX(opaque);
|
XiveTCTX *tctx = XIVE_TCTX(opaque);
|
||||||
Error *local_err = NULL;
|
Error *local_err = NULL;
|
||||||
|
int ret;
|
||||||
|
|
||||||
if (xive_in_kernel(tctx->xptr)) {
|
if (xive_in_kernel(tctx->xptr)) {
|
||||||
kvmppc_xive_cpu_get_state(tctx, &local_err);
|
ret = kvmppc_xive_cpu_get_state(tctx, &local_err);
|
||||||
if (local_err) {
|
if (ret < 0) {
|
||||||
error_report_err(local_err);
|
error_report_err(local_err);
|
||||||
return -1;
|
return ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -711,16 +712,17 @@ static int vmstate_xive_tctx_post_load(void *opaque, int version_id)
|
||||||
{
|
{
|
||||||
XiveTCTX *tctx = XIVE_TCTX(opaque);
|
XiveTCTX *tctx = XIVE_TCTX(opaque);
|
||||||
Error *local_err = NULL;
|
Error *local_err = NULL;
|
||||||
|
int ret;
|
||||||
|
|
||||||
if (xive_in_kernel(tctx->xptr)) {
|
if (xive_in_kernel(tctx->xptr)) {
|
||||||
/*
|
/*
|
||||||
* Required for hotplugged CPU, for which the state comes
|
* Required for hotplugged CPU, for which the state comes
|
||||||
* after all states of the machine.
|
* after all states of the machine.
|
||||||
*/
|
*/
|
||||||
kvmppc_xive_cpu_set_state(tctx, &local_err);
|
ret = kvmppc_xive_cpu_set_state(tctx, &local_err);
|
||||||
if (local_err) {
|
if (ret < 0) {
|
||||||
error_report_err(local_err);
|
error_report_err(local_err);
|
||||||
return -1;
|
return ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue