On 04/24/2015 12:02 PM, Paolo Bonzini wrote: > > > On 24/04/2015 11:48, Eric Auger wrote: >>>> What did the notifier code look like with your patch? >> Currently both notifiers are stored in the VFIOINTp struct. They are >> initialized in vfio_init_intp. VFIO platform device holds a list of >> VFIOINTp struct. >> >> When the vfio_start_irqfd callback is called the qemuirq is not yet >> initialized so I cannot retrieve the EventNotifiers by container_of. > > Understood better now. I would pass the "Object **child" variable of > object_set_link_property to the callback then (in qom/object.c). > > Then I would go for the other solution (the notifier, just adding the > callback to SysbusDeviceClass). But I still do not understand why you > didn't have exactly the same problem :) unless you were walking the list > to find the relevant VFIOINTp. Hi Paolo, Yes I was walking the list ;-) So is my understanding coherent: revert to first patch but moving notifier in class Thanks Eric > > Paolo > >> I can allocate and initialize them in the callback but I need a place to >> store them to close the eventfd. >> >> Also at the moment I start irqfd I must take some actions to stop (user >> side) eventfd trigger; this also urges me to get access to VFIOINTp >> struct. Some extracted pieces below (under work). _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm