qemu-e2k/hw/intc
Paolo Bonzini 60e68042cf apic: avoid getting out of halted state on masked PIC interrupts
After the next patch, if a masked PIC interrupts causes CPU_INTERRUPT_POLL
to be set, the CPU will spuriously get out of halted state.  While this
is technically valid, we should avoid that.

Make CPU_INTERRUPT_POLL run apic_update_irq in the right thread and then
look at CPU_INTERRUPT_HARD.  If CPU_INTERRUPT_HARD does not get set,
do not report the CPU as having work.

Also move the handling of software-disabled APIC from apic_update_irq
to apic_irq_pending, and always trigger CPU_INTERRUPT_POLL.  This will
be important once we will add a case that resets CPU_INTERRUPT_HARD
from apic_update_irq.  We want to run it even if we go through
CPU_INTERRUPT_POLL, and even if the local APIC is software disabled.

Reported-by: Richard Bilson <rbilson@qnx.com>
Tested-by: Richard Bilson <rbilson@qnx.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-11-24 14:37:30 +01:00
..
allwinner-a10-pic.c
apic_common.c apic_common: migrate missing fields 2014-11-13 16:13:27 +01:00
apic.c apic: avoid getting out of halted state on masked PIC interrupts 2014-11-24 14:37:30 +01:00
arm_gic_common.c arm_gic: Use GIC_NR_SGIS constant 2014-08-29 15:00:29 +01:00
arm_gic_kvm.c
arm_gic.c arm_gic: remove unused parameter. 2014-10-24 12:19:11 +01:00
armv7m_nvic.c arm_gic: remove unused parameter. 2014-10-24 12:19:11 +01:00
etraxfs_pic.c
exynos4210_combiner.c
exynos4210_gic.c
gic_internal.h arm_gic: remove unused parameter. 2014-10-24 12:19:11 +01:00
grlib_irqmp.c
heathrow_pic.c
i8259_common.c
i8259.c Fix debug print warning 2014-09-02 22:38:16 +04:00
imx_avic.c hw/intc/imx_avic.c: Remove unused function imx_avic_set_prio() 2014-09-29 18:48:47 +01:00
ioapic_common.c
ioapic.c
lm32_pic.c
Makefile.objs
omap_intc.c
openpic_kvm.c PPC: openpic_kvm: Only map first occurence in address space 2014-11-04 23:26:11 +01:00
openpic.c ppc: convert g_new(qemu_irq usages to g_new0 2014-08-15 18:54:50 +04:00
pl190.c
puv3_intc.c
realview_gic.c
s390_flic_kvm.c
s390_flic.c
sh_intc.c
slavio_intctl.c
xics_kvm.c xics: Disable flags reset on xics reset 2014-06-27 13:48:26 +02:00
xics.c xics: Implement xics_ics_free() 2014-06-27 13:48:26 +02:00
xilinx_intc.c