qemu-kvm: Fix non-ISA IRQ routing in kernel irqchip mode
PATCH 1/1 qemu-kvm: Fix non-ISA IRQ routing in kernel irqchip mode
Merge regression of d1dcf63406: The KVM i8259 believes it is also an IOAPIC and takes all GSIs. Until we refactor this, work around it by avoiding the isa_irq_handler dispatcher in kernel irqchip mode.
Signed-off-by Jan Kiszka <[email protected]>
--- hw/pc_piix.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)
hw/pc_piix.c +5 -1
@@ -131,7 +131,11 @@ static void pc_init1(ram_addr_t ram_size,if (pci_enabled) {ioapic_init (isa_irq_state); } - isa_irq =qemu_allocate_irqs (isa_irq_handler, isa_irq_state,24 ); +if (!(kvm_enabled () &&kvm_irqchip_in_kernel ())) { + isa_irq =qemu_allocate_irqs (isa_irq_handler, isa_irq_state,24 ); + }else { + isa_irq = i8259; + }if (pci_enabled) {if (!xen_enabled ()) {
Signature · 1 line
1.7.1
Avi Kivity
AppliedQuoted 4 lines · Jan Kiszka
Merge regression of
d1dcf63406: The KVM i8259 believes it is also an IOAPIC and takes all GSIs. Until we refactor this, work around it by avoiding theisa_irq_handlerdispatcher in kernel irqchip mode.
Applied, thanks.
Signature · 1 line
error compiling committee.c: too many arguments to function