[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 14/14] spapr/xive: Simplify error handling of kvmppc_xive_cpu
From: |
David Gibson |
Subject: |
Re: [PATCH 14/14] spapr/xive: Simplify error handling of kvmppc_xive_cpu_synchronize_state() |
Date: |
Thu, 13 Aug 2020 21:09:53 +1000 |
On Mon, Aug 10, 2020 at 06:55:29PM +0200, Greg Kurz wrote:
> Now that kvmppc_xive_cpu_get_state() returns negative on error, use that
> and get rid of the temporary Error object and error_propagate().
>
> Signed-off-by: Greg Kurz <groug@kaod.org>
Applied to ppc-for-5.2.
> ---
> hw/intc/spapr_xive_kvm.c | 14 ++++++--------
> include/hw/ppc/xive.h | 2 +-
> 2 files changed, 7 insertions(+), 9 deletions(-)
>
> diff --git a/hw/intc/spapr_xive_kvm.c b/hw/intc/spapr_xive_kvm.c
> index e9a36115bed6..d871bb1a0016 100644
> --- a/hw/intc/spapr_xive_kvm.c
> +++ b/hw/intc/spapr_xive_kvm.c
> @@ -119,7 +119,8 @@ int kvmppc_xive_cpu_get_state(XiveTCTX *tctx, Error
> **errp)
>
> typedef struct {
> XiveTCTX *tctx;
> - Error *err;
> + Error **errp;
> + int ret;
> } XiveCpuGetState;
>
> 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;
>
> - 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 = {
> .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_HOST_PTR(&s));
>
> - if (s.err) {
> - error_propagate(errp, s.err);
> - return;
> - }
> + return s.ret;
> }
>
> int kvmppc_xive_cpu_connect(XiveTCTX *tctx, Error **errp)
> diff --git a/include/hw/ppc/xive.h b/include/hw/ppc/xive.h
> index 785c905357dc..2c42ae92d287 100644
> --- a/include/hw/ppc/xive.h
> +++ b/include/hw/ppc/xive.h
> @@ -488,7 +488,7 @@ void xive_tctx_ipb_update(XiveTCTX *tctx, uint8_t ring,
> uint8_t ipb);
> int kvmppc_xive_source_reset_one(XiveSource *xsrc, int srcno, Error **errp);
> void kvmppc_xive_source_set_irq(void *opaque, int srcno, int val);
> int kvmppc_xive_cpu_connect(XiveTCTX *tctx, Error **errp);
> -void kvmppc_xive_cpu_synchronize_state(XiveTCTX *tctx, Error **errp);
> +int kvmppc_xive_cpu_synchronize_state(XiveTCTX *tctx, Error **errp);
> int kvmppc_xive_cpu_get_state(XiveTCTX *tctx, Error **errp);
> int kvmppc_xive_cpu_set_state(XiveTCTX *tctx, Error **errp);
>
>
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature
- Re: [PATCH 09/14] spapr/kvm: Fix error handling in kvmppc_xive_pre_save(), (continued)
- [PATCH 10/14] spapr/xive: Fix error handling in kvmppc_xive_post_load(), Greg Kurz, 2020/08/10
- [PATCH 11/14] ppc/xive: Fix error handling in vmstate_xive_tctx_*() callbacks, Greg Kurz, 2020/08/10
- [PATCH 12/14] spapr/xive: Simplify error handling in kvmppc_xive_connect(), Greg Kurz, 2020/08/10
- [PATCH 13/14] ppc/xive: Simplify error handling in xive_tctx_realize(), Greg Kurz, 2020/08/10
- [PATCH 14/14] spapr/xive: Simplify error handling of kvmppc_xive_cpu_synchronize_state(), Greg Kurz, 2020/08/10
- Re: [PATCH 14/14] spapr/xive: Simplify error handling of kvmppc_xive_cpu_synchronize_state(),
David Gibson <=