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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.