Avi Kivity wrote: > Gregory Haskins wrote: > > > >>> Sure, the interface remains the same (write 8 bytes), but the >>> implementation can change. For example, we can implement it to work >>> from interrupt context, once we hack the locking appropriately. >>> >> >> I was thinking more along the lines of eventfd_signal(). AIO and vbus >> currently use this interface, as opposed to the more polymorhpic >> f_ops->write(). >> >> > > But eventfd_signal basically marries us to eventfd.
Well, only if we expect the fd to have eventfd semantics. There are advantages to doing so, as we have discussed, because things like AIO can polymorhpically signal an interrupt without even knowing whats behind the eventfd. But this isn't a strict requirement to support AIO. Really all we need is a way for both kernel and userspace to signal. Perhaps I should export an "irqfd_signal()" function from kvm, which today will map to eventfd_signal(), and tomorrow to ??. I don't think using f_ops->write() is an option for in-kernel signaling, so we need some kind of interface here. Does that sound reasonable? -Greg
signature.asc
Description: OpenPGP digital signature