Re: [PATCH 0/2] irq: add get_gsi callback

Paolo Bonzini
2015-04-24T09:03:38Z

On 24/04/2015 11:01, Eric Auger wrote:
>> > void sysbus_init_irq(SysBusDevice *dev, qemu_irq *p)
>> > {
>> > SysBusDeviceClass *sdc = SYSBUS_DEVICE_GET_CLASS(dev);
>> > qdev_init_gpio_out_named(DEVICE(dev), p, SYSBUS_DEVICE_GPIO_IRQ, 1,
>> > sdc->irq_set_hook);
>> > }
> Hi Paolo
>
> I implemented this alternative but my concern is the check method is
> called before the qemu_irq setting. So on this callback I cannot
> retrieve the qemu_irq VFIOINTp struct container object needed to setup
> irqfd hence does not work for me.

Isn't the qemu_irq passed as the third argument to the callback? I
thought this solution was fine because you weren't passing the "int n"
from sysbus_connect_irq to your notifier.

If you really cannot make it work, I guess your "sysbus: add
irq_routing_notifier" patch would be okay. I would only ask you to move
the function pointer from SysBusDevice to SysBusDeviceClass.

Thanks,

Paolo

> I would need a post_check cb. Do you
> think it it sensible to add another cb?