On 9/17/18 6:30 PM, Emilio G. Cota wrote:
> From: Paolo Bonzini <pbonzini@redhat.com>
>
> Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> Cc: Artyom Tarasenko <atar4qemu@gmail.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> Signed-off-by: Emilio G. Cota <cota@braap.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> hw/sparc64/sparc64.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/hw/sparc64/sparc64.c b/hw/sparc64/sparc64.c
> index 408388945e..d7be7a2fb2 100644
> --- a/hw/sparc64/sparc64.c
> +++ b/hw/sparc64/sparc64.c
> @@ -56,7 +56,7 @@ void cpu_check_irqs(CPUSPARCState *env)
> /* The bit corresponding to psrpil is (1<< psrpil), the next bit
> is (2 << psrpil). */
> if (pil < (2 << env->psrpil)) {
> - if (cs->interrupt_request & CPU_INTERRUPT_HARD) {
> + if (atomic_read(&cs->interrupt_request) & CPU_INTERRUPT_HARD) {
> trace_sparc64_cpu_check_irqs_reset_irq(env->interrupt_index);
> env->interrupt_index = 0;
> cpu_reset_interrupt(cs, CPU_INTERRUPT_HARD);
> @@ -87,7 +87,7 @@ void cpu_check_irqs(CPUSPARCState *env)
> break;
> }
> }
> - } else if (cs->interrupt_request & CPU_INTERRUPT_HARD) {
> + } else if (atomic_read(&cs->interrupt_request) & CPU_INTERRUPT_HARD) {
> trace_sparc64_cpu_check_irqs_disabled(pil, env->pil_in, env->softint,
> env->interrupt_index);
> env->interrupt_index = 0;
>