[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 2/5] s390x: Move reset normal to shared reset handler
From: |
Cornelia Huck |
Subject: |
Re: [PATCH v3 2/5] s390x: Move reset normal to shared reset handler |
Date: |
Mon, 25 Nov 2019 14:19:26 +0100 |
On Mon, 25 Nov 2019 04:03:45 -0500
Janosch Frank <address@hidden> wrote:
> Let's start moving the cpu reset functions into a single function with
> a switch/case, so we can use fallthroughs and share more code between
> resets.
>
> This patch introduces the reset function by renaming cpu_reset() and
> cleaning up leftovers.
>
> Signed-off-by: Janosch Frank <address@hidden>
> Reviewed-by: David Hildenbrand <address@hidden>
> ---
> target/s390x/cpu-qom.h | 6 +++++-
> target/s390x/cpu.c | 16 ++++++++++------
> target/s390x/cpu.h | 2 +-
> target/s390x/sigp.c | 2 +-
> 4 files changed, 17 insertions(+), 9 deletions(-)
>
> diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
> index 3abe7e80fd..8d35a2a723 100644
> --- a/target/s390x/cpu.c
> +++ b/target/s390x/cpu.c
> @@ -82,18 +82,22 @@ static void s390_cpu_load_normal(CPUState *s)
> }
> #endif
>
> -/* S390CPUClass::cpu_reset() */
> -static void s390_cpu_reset(CPUState *s)
> +/* S390CPUClass::reset() */
> +static void s390_cpu_reset(CPUState *s, cpu_reset_type type)
> {
> S390CPU *cpu = S390_CPU(s);
> S390CPUClass *scc = S390_CPU_GET_CLASS(cpu);
> CPUS390XState *env = &cpu->env;
>
> - env->pfault_token = -1UL;
> - env->bpbc = false;
> scc->parent_reset(s);
> cpu->env.sigp_order = 0;
> s390_cpu_set_state(S390_CPU_STATE_STOPPED, cpu);
> +
> + switch (type) {
> + case S390_CPU_RESET_NORMAL:
> + env->pfault_token = -1UL;
> + env->bpbc = false;
I'm wondering whether we want a default case here to catch programming
errors.
> + }
> }
>
> /* S390CPUClass::initial_reset() */