From: "Gregory Haskins" <ghaskins-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
To: <kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Fwd: Re: Status of SMP?
Date: Tue, 13 Mar 2007 11:47:21 -0400 [thread overview]
Message-ID: <45F68F51.BA47.005A.0@novell.com> (raw)
In-Reply-To: 45F68E68.BA47.005A.0@novell.com
BTW: Please excuse my stupid confusion of uP (microprocessor) with UP (uniprocessor). Duh!
>>> On Tue, Mar 13, 2007 at 11:43 AM, in message <45F68E68.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>,
Gregory Haskins wrote:
> >>> On Tue, Mar 13, 2007 at 11:09 AM, in message <45F6BEC0.1010906-atKUWr5tajBWk0Htik3J/w@public.gmane.org>,
> Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org> wrote:
>> Gregory Haskins wrote:
>>
>>>
>>> Does this sound reasonable?
>>>
>>
>> Much simpler (at least to start with) is to send a signal. The signal
>> will interrupt the guest if it is in guest mode, or if it sleeping, it
>> will wake up the thread. Upon receiving the signal, the thread can
>> inject an interrupt.
>>
>> Later on, we may wish to optimize this to avoid the signal if we're
>> certain to be in guest mode, and only send it if we're asleep.
>
> I will investigate it from this perspective then...but I currently dont
> understand how a signal delivery would cause the guest to be interrupted
> (unless you guys have already put some trickery in the kvm-kmod ;).
>
> I can follow the logic for a uP system (I think, therefore I am.....e.g. you
> cannot be both host and guest mode at the same time). However, in an SMP
> system it would be conceivable for one task to be in host context, and
> another to be in guest context simultaneously. If a guest was already in VM
> context, wouldnt the signal being delivered simply be posted to the
> pending-signals for the task and get evaluated at the next VMEXIT? The
> method I was describing would actually invoke the VMEXIT to begin with.
> Perhaps the best solution is a combination of both (post a signal and an IPI
> which evaluates to no-op in host mode). Forgive me if I am ignorant and/or
> being obtuse. :)
>
> Is there something I am missing? Or is there an issue with SMP with this
> approach?
>
>>
>>
>>> The thing I cant quite wrap my head around is how this would work in the PV
>> driver sense. For SMP, its clear...one VCPU thread might be in QEMU context
>> in the LAPIC model and send the FORCE_EXIT ioctl against another VCPU to
>> deliever the IPI. How does this work in a uP setup for PV? Is there some
>> other thread in QEMU that might be waiting for AIO completions (etc) that
>> would then be able to invoke the ioctl? Otherwise, our one and only thread
>> is tied up in VM context so I dont get how it would work.
>>>
>>
>> The scenario is a host- side kernel- mode device receiving a network
>> packet and wishing to interrupt a guest. Here, the device receive
>> handler is a separate thread of execution.
>
> I see. That makes sense.
>
> -Greg
>
>
>
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
next prev parent reply other threads:[~2007-03-13 15:47 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-13 12:47 Status of SMP? Gregory Haskins
[not found] ` <45F66525.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-03-13 13:16 ` Avi Kivity
[not found] ` <45F67F12.BA47.005A.0@novell.com>
[not found] ` <45F6B962.9070301@qumranet.com>
[not found] ` <45F684E7.BA47.005A.0@novell.com>
[not found] ` <45F6BEC0.1010906@qumranet.com>
[not found] ` <45F68E68.BA47.005A.0@novell.com>
2007-03-13 15:47 ` Gregory Haskins [this message]
[not found] ` <45F6A426.9090004-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-14 21:09 ` Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A802385E65-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-15 8:43 ` Avi Kivity
[not found] ` <45F90728.2040207-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-15 22:08 ` Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A8023B861B-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-16 6:46 ` Avi Kivity
[not found] ` <45FA3D2F.4070603-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-16 15:21 ` Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A8023B8983-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-18 5:48 ` Avi Kivity
2007-03-16 14:35 ` Huang2, Wei
2007-03-16 17:51 ` Huang2, Wei
[not found] ` <7D748C767B7FA541A8AC5504A4C89A23015685C1-SXV0rU3j2e+jL8BtgrxzBQC/G2K4zDHf@public.gmane.org>
2007-03-18 5:14 ` Avi Kivity
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=45F68F51.BA47.005A.0@novell.com \
--to=ghaskins-et1tbqhtxzrqt0dzr+alfa@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