qemu-devel
[Top][All Lists]
Advanced

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

Re: [PULL 02/63] riscv: plic: Add a couple of mising sifive_plic_update


From: Jessica Clarke
Subject: Re: [PULL 02/63] riscv: plic: Add a couple of mising sifive_plic_update calls
Date: Fri, 26 Jun 2020 23:01:20 +0100

On 26 Jun 2020, at 22:43, Alistair Francis <alistair.francis@wdc.com> wrote:
> 
> From: Jessica Clarke <jrtc27@jrtc27.com>
> 
> Claiming an interrupt and changing the source priority both potentially
> affect whether an interrupt is pending, thus we must re-compute xEIP.
> Note that we don't put the sifive_plic_update inside sifive_plic_claim
> so that the logging of a claim (and the resulting IRQ) happens before
> the state update, making the causal effect clear, and that we drop the
> explicit call to sifive_plic_print_state when claiming since
> sifive_plic_update already does that automatically at the end for us.
> 
> This can result in both spurious interrupt storms if you fail to
> complete an IRQ before enabling interrupts (and no other actions occur
> that result in a call to sifive_plic_update), but also more importantly
> lost interrupts if a disabled interrupt is pending and then becomes
> enabled.
> 
> Signed-off-by: Jessica Clarke <jrtc27@jrtc27.com>
> Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
> Message-id: 20200618210649.22451-1-jrtc27@jrtc27.com
> Message-Id: <20200618210649.22451-1-jrtc27@jrtc27.com>

Something went a bit weird here.

Jess




reply via email to

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