Davide Libenzi wrote: > On Tue, 15 May 2007, Gregory Haskins wrote: > > >>>>> On Tue, May 15, 2007 at 3:45 AM, in message <[EMAIL PROTECTED]>, >>>>> >> Avi Kivity <[EMAIL PROTECTED]> wrote: >> >>> Gregory Haskins wrote: >>> >>>> Signed- off- by: Gregory Haskins <[EMAIL PROTECTED]> >>>> --- >>>> >>>> drivers/kvm/kvm.h | 1 + >>>> drivers/kvm/kvm_main.c | 52 >>>> ++++++++++++++++++++++++++++++++++++++++++------ >>>> include/linux/kvm.h | 1 + >>>> 3 files changed, 48 insertions(+), 6 deletions(- ) >>>> >>>> diff -- git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h >>>> index 7b5d5e6..f5731c4 100644 >>>> --- a/drivers/kvm/kvm.h >>>> +++ b/drivers/kvm/kvm.h >>>> @@ - 333,6 +333,7 @@ struct kvm_vcpu_irq { >>>> int deferred; >>>> struct task_struct *task; >>>> int guest_mode; >>>> + int eventfd; >>>> >>>> >>> Best to convert the fd to a filp when you install it. This avoids the >>> conversion during runtime and allows you to do error checking earlier. >>> >> That was my initial impression also, but then I realized there was a >> problem with that: Eventfd doesnt appear to have any way to notify >> other entities when the fd is closed. Therefore the filp could be left >> dangling in this case. By using the fd instead, I can validate the >> pointer each time I need it. Perhaps Davide will have a suggestion >> here. >> > > I don't know how critical is the path where you will be doing check. The > eventfd_fget() is pretty fast, so if you're not looking at a performance > critical path, I'd suggest that. Otherwise you can do an early > eventfd_get, and keep the file*. If you have no the ways to know if the > userspace disconnected, an atomic_read(&file->f_count)==1 will tell you > that you're the only owner of the file* (that is, userspace closed the > eventfd descriptor). I'd give preference to the former option though. >
We aren't really interested whether userspace is looking or not. After all, it installed the eventfd, so it must be interested in the events. > Avi, as you may have read from lkml, Andrew prefers the eventfd symbols > export to come through the kvm tree, since they do not want to export > symbols that so far has no module users. > > Yes, I'll pick up the patch from lkml. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel