An external interrupt should not interrupted in-servicing interrupt with equal priority. Signed-off-by: Liu Yu <yu.liu@xxxxxxxxxxxxx> --- hw/openpic.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hw/openpic.c b/hw/openpic.c index def20eb..b8da4d7 100644 --- a/hw/openpic.c +++ b/hw/openpic.c @@ -279,7 +279,7 @@ static void IRQ_local_pipe (openpic_t *opp, int n_CPU, int n_IRQ) } IRQ_get_next(opp, &dst->raised); if (IRQ_get_next(opp, &dst->servicing) != -1 && - priority < dst->servicing.priority) { + priority <= dst->servicing.priority) { DPRINTF("%s: IRQ %d is hidden by servicing IRQ %d on CPU %d\n", __func__, n_IRQ, dst->servicing.next, n_CPU); /* Already servicing a higher priority IRQ */ -- 1.5.4 -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html