qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC v4 14/71] cpu: define cpu_halted helpers


From: Alex Bennée
Subject: Re: [Qemu-devel] [RFC v4 14/71] cpu: define cpu_halted helpers
Date: Wed, 31 Oct 2018 12:04:27 +0000
User-agent: mu4e 1.1.0; emacs 26.1.50

Emilio G. Cota <address@hidden> writes:

> cpu->halted will soon be protected by cpu->lock.
> We will use these helpers to ease the transition,
> since right now cpu->halted has many direct callers.
>
> Reviewed-by: Richard Henderson <address@hidden>
> Signed-off-by: Emilio G. Cota <address@hidden>

Reviewed-by: Alex Bennée <address@hidden>

> ---
>  include/qom/cpu.h | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/include/qom/cpu.h b/include/qom/cpu.h
> index 11cbf21f00..aeed63a705 100644
> --- a/include/qom/cpu.h
> +++ b/include/qom/cpu.h
> @@ -487,6 +487,30 @@ bool cpu_mutex_locked(const CPUState *cpu);
>   */
>  bool no_cpu_mutex_locked(void);
>
> +static inline uint32_t cpu_halted(CPUState *cpu)
> +{
> +    uint32_t ret;
> +
> +    if (cpu_mutex_locked(cpu)) {
> +        return cpu->halted;
> +    }
> +    cpu_mutex_lock(cpu);
> +    ret = cpu->halted;
> +    cpu_mutex_unlock(cpu);
> +    return ret;
> +}
> +
> +static inline void cpu_halted_set(CPUState *cpu, uint32_t val)
> +{
> +    if (cpu_mutex_locked(cpu)) {
> +        cpu->halted = val;
> +        return;
> +    }
> +    cpu_mutex_lock(cpu);
> +    cpu->halted = val;
> +    cpu_mutex_unlock(cpu);
> +}
> +
>  static inline void cpu_tb_jmp_cache_clear(CPUState *cpu)
>  {
>      unsigned int i;


--
Alex Bennée



reply via email to

[Prev in Thread] Current Thread [Next in Thread]