diff options
author | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-01-15 21:19:54 +0000 |
---|---|---|
committer | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-01-15 21:19:54 +0000 |
commit | 2486516710d6365b5ec2be267bbdf4c79d0af3ad (patch) | |
tree | 96636867267e9d465b8f6c5d03af65c1859dfdd8 /hw/openpic.c | |
parent | 57be80f948cdbb75ef00fd8345845d83010d8af1 (diff) | |
download | qemu-2486516710d6365b5ec2be267bbdf4c79d0af3ad.zip qemu-2486516710d6365b5ec2be267bbdf4c79d0af3ad.tar.gz qemu-2486516710d6365b5ec2be267bbdf4c79d0af3ad.tar.bz2 |
powerpc/kvm: fix a openpic bug (Liu Yu)
An external interrupt should not interrupted in-servicing interrupt with equal priority.
Signed-off-by: Liu Yu <yu.liu@freescale.com>
Acked-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6328 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/openpic.c')
-rw-r--r-- | 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 */ |