Michael S. Tsirkin wrote: > On Tue, Jun 23, 2009 at 07:33:07AM -0400, Gregory Haskins wrote: > >> Michael S. Tsirkin wrote: >> >>> On Thu, Jun 18, 2009 at 08:30:46PM -0400, Gregory Haskins wrote: >>> >>> >>>> +static int >>>> +iosignalfd_group_in_range(struct kvm_io_device *this, gpa_t addr, int len, >>>> + int is_write) >>>> +{ >>>> + struct _iosignalfd_group *p = to_group(this); >>>> + >>>> + return ((addr >= p->addr && (addr < p->addr + p->length))); >>>> +} >>>> >>>> >>> I think I see a problem here. For virtio, we do not necessarily want all >>> virtqueues for a device to live in kernel: there might be control >>> virtqueues that we want to leave in userspace. Since this claims all >>> writes to a specific address, the signal never makes it to userspace. >>> >>> >>> >> You can use a wildcard. Would that work? >> >> > > Nope, you need to know the value written. > > Note: You can also terminate an eventfd in userspace...it doesn't have to terminate in-kernel. Not sure if that helps.
Attachment:
signature.asc
Description: OpenPGP digital signature