From: Anthony Liguori <anthony-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
To: Rusty Russell <rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
Cc: kvm-devel
<kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
lguest <lguest-mnsaURCQ41sdnm+yROfE0A@public.gmane.org>,
virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
Subject: Re: [kvm-devel] [RFC PATCH 0/4] Inter-guest virtio I/O example with lguest
Date: Thu, 20 Mar 2008 09:11:35 -0500 [thread overview]
Message-ID: <47E27097.7070302@codemonkey.ws> (raw)
In-Reply-To: <200803201659.14344.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
Rusty Russell wrote:
> Hi all,
>
> Just finished my prototype of inter-guest virtio, using networking as an
> example. Each guest mmaps the other's address space and uses a FIFO for
> notifications.
>
> There are two issues with this approach. The first is that neither guest
> can change its mappings. See patch 1.
Avi mentioned that with MMU notifiers, it may be possible to introduce a
new kernel mechanism whereas you could map an arbitrary region of one
process's memory into another process. This would address this problem
quite nicely.
> The second is that our feature
> configuration is "host presents, guest chooses" which breaks down when we
> don't know the capabilities of each guest. In particular, TSO capability for
> networking.
> There are three possible solutions:
> 1) Just offer the lowest common denominator to both sides (ie. no features).
> This is what I do with lguest in these patches.
> 2) Offer something and handle the case where one Guest accepts and another
> doesn't by emulating it. ie. de-TSO the packets manually.
> 3) "Hot unplug" the device from the guest which asks for the greater features,
> then re-add it offering less features. Requires hotplug in the guest OS.
>
4) Add a feature negotiation feature. The feature that gets set is the
"feature negotiate" feature. If a guest doesn't support feature
negotiation, you end up with the least-common denominator (no
features). If both guests support feature negotiation, you can then add
something new to determine the true common subset.
> I haven't tuned or even benchmarked these patches, but it pings!
>
Very nice! It's particularly cool that it was possible entirely in
userspace.
Regards,
Anthony Liguori
> Rusty.
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> kvm-devel mailing list
> kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> https://lists.sourceforge.net/lists/listinfo/kvm-devel
>
next prev parent reply other threads:[~2008-03-20 14:11 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-20 5:59 [RFC PATCH 0/4] Inter-guest virtio I/O example with lguest Rusty Russell
2008-03-20 6:05 ` [RFC PATCH 1/5] lguest: mmap backing file Rusty Russell
[not found] ` <200803201659.14344.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2008-03-20 6:05 ` Rusty Russell
2008-03-20 6:22 ` [RFC PATCH 2/5] lguest: Encapsulate Guest memory ready for dealing with other Guests Rusty Russell
2008-03-20 8:16 ` [Lguest] [RFC PATCH 1/5] lguest: mmap backing file Tim Post
2008-03-20 14:07 ` Paul TBBle Hampson
[not found] ` <1206000960.6873.124.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-03-20 14:07 ` Paul TBBle Hampson
2008-03-21 0:29 ` Rusty Russell
2008-03-21 0:29 ` [Lguest] " Rusty Russell
2008-03-20 8:16 ` Tim Post
[not found] ` <200803201705.44422.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2008-03-20 6:22 ` [RFC PATCH 2/5] lguest: Encapsulate Guest memory ready for dealing with other Guests Rusty Russell
2008-03-20 6:36 ` [RFC PATCH 3/5] lguest: separate out virtqueue info from device info Rusty Russell
2008-03-20 6:36 ` Rusty Russell
[not found] ` <200803201736.01883.rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2008-03-20 6:40 ` [RFC PATCH 4/5] lguest: ignore bad virtqueues Rusty Russell
2008-03-20 6:45 ` [RFC PATCH 5/5] lguest: Inter-guest networking Rusty Russell
2008-03-20 6:45 ` Rusty Russell
2008-03-20 6:40 ` [RFC PATCH 4/5] lguest: ignore bad virtqueues Rusty Russell
2008-03-20 14:04 ` [kvm-devel] [RFC PATCH 1/5] lguest: mmap backing file Anthony Liguori
2008-03-20 14:32 ` [Lguest] " Paul TBBle Hampson
[not found] ` <47E26EE1.5030706-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2008-03-20 14:32 ` Paul TBBle Hampson
2008-03-20 15:07 ` Avi Kivity
2008-03-20 15:24 ` Anthony Liguori
2008-03-20 15:24 ` [kvm-devel] " Anthony Liguori
2008-03-20 22:12 ` Rusty Russell
2008-03-20 23:46 ` Anthony Liguori
2008-03-23 9:11 ` [kvm-devel] " Avi Kivity
2008-03-23 9:11 ` Avi Kivity
2008-03-20 23:46 ` [kvm-devel] " Anthony Liguori
2008-03-20 15:07 ` Avi Kivity
2008-03-20 22:12 ` Rusty Russell
2008-03-20 14:04 ` Anthony Liguori
2008-03-20 6:54 ` [kvm-devel] [RFC PATCH 0/4] Inter-guest virtio I/O example with lguest Avi Kivity
2008-03-20 13:55 ` Anthony Liguori
[not found] ` <47E20A35.2000600-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-03-20 13:55 ` Anthony Liguori
2008-03-20 14:27 ` Avi Kivity
[not found] ` <47E26CC1.8080900-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2008-03-20 14:27 ` Avi Kivity
2008-03-20 14:39 ` Anthony Liguori
[not found] ` <47E27461.4090404-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-03-20 14:39 ` Anthony Liguori
2008-03-20 14:55 ` Avi Kivity
2008-03-20 14:55 ` Avi Kivity
2008-03-20 15:05 ` [kvm-devel] " Anthony Liguori
2008-03-20 15:05 ` Anthony Liguori
2008-03-20 15:36 ` Avi Kivity
2008-03-20 15:52 ` [kvm-devel] " Anthony Liguori
[not found] ` <47E28482.9010501-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-03-20 15:52 ` Anthony Liguori
2008-03-20 15:36 ` Avi Kivity
2008-03-20 22:14 ` Rusty Russell
2008-03-20 22:14 ` Rusty Russell
2008-03-20 14:11 ` Anthony Liguori [this message]
2008-03-23 12:05 ` [kvm-devel] " Rusty Russell
2008-03-23 12:05 ` Rusty Russell
2008-03-20 6:54 ` [kvm-devel] " Avi Kivity
2008-03-20 14:11 ` Anthony Liguori
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=47E27097.7070302@codemonkey.ws \
--to=anthony-rdkfgonbjusknkdkm+me6a@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=lguest-mnsaURCQ41sdnm+yROfE0A@public.gmane.org \
--cc=rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org \
--cc=virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@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.