On 05/29/2011 06:05 PM, Jan Kiszka wrote:
On 2011-05-29 14:57, Avi Kivity wrote: > Recent changes killed the ioapic_irq_hack hack, use the isa_get_irq() API > instead. > > Signed-off-by: Avi Kivity<avi@xxxxxxxxxx> > --- > hw/isa-bus.c | 2 +- > hw/testdev.c | 4 +--- > 2 files changed, 2 insertions(+), 4 deletions(-) > > diff --git a/hw/isa-bus.c b/hw/isa-bus.c > index 2765543..7e06efc 100644 > --- a/hw/isa-bus.c > +++ b/hw/isa-bus.c > @@ -66,7 +66,7 @@ void isa_bus_irqs(qemu_irq *irqs) > */ > qemu_irq isa_get_irq(int isairq) > { > - if (isairq< 0 || isairq> 15) { > + if (isairq< 0 || isairq> 23) { That's a fairly evil hack. It will break again when we clean up the kvm irqchips (not to speak of side effects in non-irqchip/non-kvm mode). Why not hook into the kvm irqchip directly? Would keep generic code out of this business until we have real irq pin manipulation in qemu.
Firstly, I did the minimal patch to get things working, as is my custom when fixing up merge/refactoring problems. Not that I often follow up with the clean fix.
Second, I'm not sure it's such a hack. Suppose our motherboard wired the PCI links to GSI16-19 (or GSI16-23, as we once wanted before we had MSI-X)? We'd need an API to access non-ISA interrupt lines.
So what's the clean fix here? gsi_get_irq()? -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html