On Sat, 4 Dec 2010, Jan Kiszka wrote: > Am 04.12.2010 15:41, Thomas Gleixner wrote: > > Also there is a pretty simple solution for this: The core code knows, > > that there is an ONESHOT interrupt in flight, so it simply can call > > It doesn't synchronize the tail part against the masking in the > handler(s), that's driver business. Right, but the core knows from the irq state, that the line is masked and due to the ONESHOT or whatever feature it knows that it needs to call the handler. The other way round shared -> exclusive does not matter at all. > > the primary handler of that device with the appropriate flag set > > (maybe an additional one to indicate the transition) and let that deal > > with it. Needs some thought vs. locking and races, but that shouldn't > > be hard. > > Yes, I thought about this kind of transition (re-invoking the existing > handler) already. We do need notification of the switch (at least for > exclusive->shared) as only the driver can migrate the masking for > in-flight interrupts. Right. It needs to set the device level mask in that case. As the interrupt handler already has the code to do that it's the most obvious function to call. Thanks, tglx -- 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