On 26.01.2017 10:35, Paolo Bonzini wrote: > > > On 19/01/2017 15:09, Peter Maydell wrote: >> + uint64_t lr = cs->ich_lr_el2[i]; >> + >> + if ((lr & ICH_LR_EL2_STATE_MASK) == 0 && >> + ((lr & ICH_LR_EL2_HW) == 1 || (lr & ICH_LR_EL2_EOI) == 0)) { > > This should be "!= 0", not == 1 (reported by Coverity).
A patch for this issue is already on the mailing list - see "arm_gicv3: Fix broken logic in ELRSR calculation" Thomas