From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: Davide Libenzi <davidel-AhlLAIvw+VEjIGhXcJzhZg@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: [PATCH 5/9] KVM: Adds ability to signal userspace using a file-descriptor
Date: Wed, 16 May 2007 13:09:21 +0300 [thread overview]
Message-ID: <464AD851.7060703@qumranet.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0705150832130.30085-GPJ85BhbkB8RepQJljzAVbITYcZ0+W3JAL8bYrjMMd8@public.gmane.org>
Davide Libenzi wrote:
> On Tue, 15 May 2007, Gregory Haskins wrote:
>
>
>>>>> On Tue, May 15, 2007 at 3:45 AM, in message <4649650E.2070102-atKUWr5tajBWk0Htik3J/w@public.gmane.org>,
>>>>>
>> Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org> wrote:
>>
>>> Gregory Haskins wrote:
>>>
>>>> Signed- off- by: Gregory Haskins <ghaskins-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
>>>> ---
>>>>
>>>> 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/
next prev parent reply other threads:[~2007-05-16 10:09 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-15 3:15 [PATCH 0/9] in-kernel APIC v4 (kernel side) Gregory Haskins
[not found] ` <20070515031217.9382.44999.stgit-sLgBBP33vUGnsjUZhwzVf9HuzzzSOjJt@public.gmane.org>
2007-05-15 3:15 ` [PATCH 1/9] KVM: Adds support for in-kernel mmio handlers Gregory Haskins
2007-05-15 3:15 ` [PATCH 2/9] KVM: VMX - fix interrupt checking on light-exit Gregory Haskins
2007-05-15 3:15 ` [PATCH 3/9] KVM: Add irqdevice object Gregory Haskins
2007-05-15 3:15 ` [PATCH 4/9] KVM: Adds ability to preempt an executing VCPU Gregory Haskins
2007-05-15 3:15 ` [PATCH 5/9] KVM: Adds ability to signal userspace using a file-descriptor Gregory Haskins
[not found] ` <20070515031536.9382.16826.stgit-sLgBBP33vUGnsjUZhwzVf9HuzzzSOjJt@public.gmane.org>
2007-05-15 7:45 ` Avi Kivity
[not found] ` <4649650E.2070102-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-15 12:02 ` Gregory Haskins
[not found] ` <464968D6.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-05-15 15:40 ` Davide Libenzi
[not found] ` <Pine.LNX.4.64.0705150832130.30085-GPJ85BhbkB8RepQJljzAVbITYcZ0+W3JAL8bYrjMMd8@public.gmane.org>
2007-05-15 16:18 ` Gregory Haskins
[not found] ` <4649A4E1.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-05-15 16:22 ` Christoph Hellwig
[not found] ` <20070515162249.GA19238-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2007-05-15 16:29 ` Gregory Haskins
2007-05-15 17:16 ` Davide Libenzi
[not found] ` <Pine.LNX.4.64.0705151008400.30345-GPJ85BhbkB8RepQJljzAVbITYcZ0+W3JAL8bYrjMMd8@public.gmane.org>
2007-05-16 12:00 ` Avi Kivity
[not found] ` <464AF269.7030402-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-16 19:59 ` Davide Libenzi
[not found] ` <Pine.LNX.4.64.0705161201410.12427-GPJ85BhbkB8RepQJljzAVbITYcZ0+W3JAL8bYrjMMd8@public.gmane.org>
2007-05-17 11:33 ` Avi Kivity
[not found] ` <464C3D93.5090605-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-17 19:11 ` Davide Libenzi
[not found] ` <Pine.LNX.4.64.0705171010570.31677-GPJ85BhbkB8RepQJljzAVbITYcZ0+W3JAL8bYrjMMd8@public.gmane.org>
2007-05-17 21:57 ` Davide Libenzi
2007-05-20 7:20 ` Avi Kivity
2007-05-16 10:09 ` Avi Kivity [this message]
2007-05-16 10:07 ` Avi Kivity
2007-05-15 3:15 ` [PATCH 6/9] KVM: Add support for in-kernel LAPIC model Gregory Haskins
2007-05-15 3:15 ` [PATCH 7/9] KVM: Adds support for real NMI injection on VMX processors Gregory Haskins
2007-05-15 3:15 ` [PATCH 8/9] KVM: Adds basic plumbing to support TPR shadow features Gregory Haskins
2007-05-15 3:15 ` [PATCH 9/9] KVM: Add statistics from interrupt subsystem Gregory Haskins
-- strict thread matches above, loose matches on Subject: below --
2007-05-15 14:57 [PATCH 0/9] in-kernel APIC v5 (kernel side) Gregory Haskins
[not found] ` <20070515145404.15609.61552.stgit-sLgBBP33vUGnsjUZhwzVf9HuzzzSOjJt@public.gmane.org>
2007-05-15 14:57 ` [PATCH 5/9] KVM: Adds ability to signal userspace using a file-descriptor Gregory Haskins
[not found] ` <20070515145759.15609.34720.stgit-sLgBBP33vUGnsjUZhwzVf9HuzzzSOjJt@public.gmane.org>
2007-05-15 16:39 ` Anthony Liguori
[not found] ` <4649E22F.3090308-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-15 16:55 ` Gregory Haskins
[not found] ` <4649AD87.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-05-15 18:44 ` Anthony Liguori
[not found] ` <4649FF7B.10107-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-16 11:56 ` Avi Kivity
2007-05-09 15:18 [PATCH 0/9] in-kernel APIC v2 Gregory Haskins
[not found] ` <20070509151238.8673.4818.stgit-sLgBBP33vUGnsjUZhwzVf9HuzzzSOjJt@public.gmane.org>
2007-05-09 15:19 ` [PATCH 5/9] KVM: Adds ability to signal userspace using a file-descriptor Gregory Haskins
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=464AD851.7060703@qumranet.com \
--to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
--cc=davidel-AhlLAIvw+VEjIGhXcJzhZg@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox