On 26 Jun 2020, at 22:43, Alistair Francis <alistair.fran...@wdc.com> wrote: > > From: Jessica Clarke <jrt...@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 <jrt...@jrtc27.com> > Reviewed-by: Alistair Francis <alistair.fran...@wdc.com> > Message-id: 20200618210649.22451-1-jrt...@jrtc27.com > Message-Id: <20200618210649.22451-1-jrt...@jrtc27.com>
Something went a bit weird here. Jess