From: Rusty Russell <rusty-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
To: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
Cc: kvm-devel <kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: virtio & hypercall interface?
Date: Sat, 15 Sep 2007 18:32:33 +1000 [thread overview]
Message-ID: <1189845153.7262.94.camel@localhost.localdomain> (raw)
In-Reply-To: <46EB9245.4010005-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
On Sat, 2007-09-15 at 11:05 +0300, Avi Kivity wrote:
> Rusty Russell wrote:
> > On Sat, 2007-09-15 at 01:31 +0300, Dor Laor wrote:
> >
> >> Second, regardless of the channel signal notification, there are still
> >> real necessities for userspace hypercall handling:
> >> 1. For virtio drivers there is also registration hypercall for passing
> >> the shared memory pfns.
> >> Sure there are other possibilities, but why limit ourselves?
> >>
> >
> > I really prefer doing this the more "hardware-like" way and having the
> > device description say where the pages are. Surely this is simpler from
> > the qemu side, too?
> >
>
> This is mmio style (device provides memory). DMA style (guest provides
> memory, device dmas it) is easier for kvm: we don't need to allocate a
> new memory slot, and migration is easier.
>
> Most current hardware place the descriptor ring in guest memory, not the
> device, since mmio is slower for the cpu than RAM.
But for virtual devices it seems unnecessarily convoluted: we'd have
some mmio space (or PCI config space?) to tell the device where the ring
buffer is. That's a little nasty for lguest early printk, too.
I'm looking now at getting lguest to present a PCI bus implementation
(probably changing virtbus to a series of PCI id plus bytes for "config
space"). That's easier with a "device mem" model, since no config info
needs to go back to the host.
OTOH, with the guest memory model, guest can potentially choose size of
ring. I don't know if that's an actual advantage (but I have code now
which makes the ring size variable).
Rusty.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
next prev parent reply other threads:[~2007-09-15 8:32 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-13 6:21 virtio & hypercall interface? Rusty Russell
[not found] ` <1189664514.32322.14.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-13 19:21 ` Anthony Liguori
[not found] ` <46E98DC0.3050509-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-09-13 21:26 ` Rusty Russell
[not found] ` <1189718818.32322.41.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-13 21:41 ` Anthony Liguori
2007-09-13 20:33 ` Dor Laor
[not found] ` <64F9B87B6B770947A9F8391472E032160DA17EF2-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-09-13 20:45 ` Anthony Liguori
[not found] ` <46E9A17D.5040205-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-09-14 16:46 ` Avi Kivity
[not found] ` <46EABAD0.40300-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-14 22:31 ` Dor Laor
[not found] ` <46EB0BD8.6040000-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-15 3:06 ` Rusty Russell
[not found] ` <1189825560.7262.77.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-15 8:05 ` Avi Kivity
[not found] ` <46EB9245.4010005-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-15 8:32 ` Rusty Russell [this message]
[not found] ` <1189845153.7262.94.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-15 9:38 ` Avi Kivity
[not found] ` <46EBA806.6070507-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-16 7:50 ` Rusty Russell
[not found] ` <1189929012.7262.105.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-16 8:57 ` Avi Kivity
[not found] ` <46ECEFEE.6000208-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-16 9:35 ` Rusty Russell
[not found] ` <1189935324.7262.120.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-09-16 9:45 ` Avi Kivity
2007-09-15 7:59 ` Avi Kivity
2007-09-15 17:31 ` Anthony Liguori
[not found] ` <46EC1709.2080803-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-09-15 21:56 ` Dor Laor
[not found] ` <46EC5515.2020004-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-15 22:49 ` Anthony Liguori
2007-09-14 16:44 ` Avi Kivity
[not found] ` <46EABA59.10808-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-09-14 16:49 ` 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=1189845153.7262.94.camel@localhost.localdomain \
--to=rusty-8n+1lvoiyb80n/f98k4iww@public.gmane.org \
--cc=avi-atKUWr5tajBWk0Htik3J/w@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.