|
@@ -119,7 +119,8 @@ int kvmppc_xive_cpu_get_state(XiveTCTX *tctx, Error **errp)
|
|
|
|
|
|
typedef struct {
|
|
typedef struct {
|
|
XiveTCTX *tctx;
|
|
XiveTCTX *tctx;
|
|
- Error *err;
|
|
|
|
|
|
+ Error **errp;
|
|
|
|
+ int ret;
|
|
} XiveCpuGetState;
|
|
} XiveCpuGetState;
|
|
|
|
|
|
static void kvmppc_xive_cpu_do_synchronize_state(CPUState *cpu,
|
|
static void kvmppc_xive_cpu_do_synchronize_state(CPUState *cpu,
|
|
@@ -127,14 +128,14 @@ static void kvmppc_xive_cpu_do_synchronize_state(CPUState *cpu,
|
|
{
|
|
{
|
|
XiveCpuGetState *s = arg.host_ptr;
|
|
XiveCpuGetState *s = arg.host_ptr;
|
|
|
|
|
|
- kvmppc_xive_cpu_get_state(s->tctx, &s->err);
|
|
|
|
|
|
+ s->ret = kvmppc_xive_cpu_get_state(s->tctx, s->errp);
|
|
}
|
|
}
|
|
|
|
|
|
-void kvmppc_xive_cpu_synchronize_state(XiveTCTX *tctx, Error **errp)
|
|
|
|
|
|
+int kvmppc_xive_cpu_synchronize_state(XiveTCTX *tctx, Error **errp)
|
|
{
|
|
{
|
|
XiveCpuGetState s = {
|
|
XiveCpuGetState s = {
|
|
.tctx = tctx,
|
|
.tctx = tctx,
|
|
- .err = NULL,
|
|
|
|
|
|
+ .errp = errp,
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -143,10 +144,7 @@ void kvmppc_xive_cpu_synchronize_state(XiveTCTX *tctx, Error **errp)
|
|
run_on_cpu(tctx->cs, kvmppc_xive_cpu_do_synchronize_state,
|
|
run_on_cpu(tctx->cs, kvmppc_xive_cpu_do_synchronize_state,
|
|
RUN_ON_CPU_HOST_PTR(&s));
|
|
RUN_ON_CPU_HOST_PTR(&s));
|
|
|
|
|
|
- if (s.err) {
|
|
|
|
- error_propagate(errp, s.err);
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
|
|
+ return s.ret;
|
|
}
|
|
}
|
|
|
|
|
|
int kvmppc_xive_cpu_connect(XiveTCTX *tctx, Error **errp)
|
|
int kvmppc_xive_cpu_connect(XiveTCTX *tctx, Error **errp)
|