From: Avi Kivity <avi@redhat.com>
To: Gregory Haskins <gregory.haskins@gmail.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"Ira W. Snyder" <iws@ovro.caltech.edu>,
netdev@vger.kernel.org,
virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
linux-kernel@vger.kernel.org, mingo@elte.hu, linux-mm@kvack.org,
akpm@linux-foundation.org, hpa@zytor.com,
Rusty Russell <rusty@rustcorp.com.au>,
s.hetze@linux-ag.com, alacrityvm-devel@lists.sourceforge.net
Subject: Re: [PATCHv5 3/3] vhost_net: a kernel-level virtio server
Date: Tue, 15 Sep 2009 18:03:17 +0300 [thread overview]
Message-ID: <4AAFACB5.9050808@redhat.com> (raw)
In-Reply-To: <4AAF9BAF.3030109@gmail.com>
On 09/15/2009 04:50 PM, Gregory Haskins wrote:
>> Why? vhost will call get_user_pages() or copy_*_user() which ought to
>> do the right thing.
>>
> I was speaking generally, not specifically to Ira's architecture. What
> I mean is that vbus was designed to work without assuming that the
> memory is pageable. There are environments in which the host is not
> capable of mapping hvas/*page, but the memctx->copy_to/copy_from
> paradigm could still work (think rdma, for instance).
>
Sure, vbus is more flexible here.
>>> As an aside: a bigger issue is that, iiuc, Ira wants more than a single
>>> ethernet channel in his design (multiple ethernets, consoles, etc). A
>>> vhost solution in this environment is incomplete.
>>>
>>>
>> Why? Instantiate as many vhost-nets as needed.
>>
> a) what about non-ethernets?
>
There's virtio-console, virtio-blk etc. None of these have kernel-mode
servers, but these could be implemented if/when needed.
> b) what do you suppose this protocol to aggregate the connections would
> look like? (hint: this is what a vbus-connector does).
>
You mean multilink? You expose the device as a multiqueue.
> c) how do you manage the configuration, especially on a per-board basis?
>
pci (for kvm/x86).
> Actually I have patches queued to allow vbus to be managed via ioctls as
> well, per your feedback (and it solves the permissions/lifetime
> critisims in alacrityvm-v0.1).
>
That will make qemu integration easier.
>> The only difference is the implementation. vhost-net
>> leaves much more to userspace, that's the main difference.
>>
> Also,
>
> *) vhost is virtio-net specific, whereas vbus is a more generic device
> model where thing like virtio-net or venet ride on top.
>
I think vhost-net is separated into vhost and vhost-net.
> *) vhost is only designed to work with environments that look very
> similar to a KVM guest (slot/hva translatable). vbus can bridge various
> environments by abstracting the key components (such as memory access).
>
Yes. virtio is really virtualization oriented.
> *) vhost requires an active userspace management daemon, whereas vbus
> can be driven by transient components, like scripts (ala udev)
>
vhost by design leaves configuration and handshaking to userspace. I
see it as an advantage.
--
error compiling committee.c: too many arguments to function
WARNING: multiple messages have this Message-ID (diff)
From: Avi Kivity <avi@redhat.com>
To: Gregory Haskins <gregory.haskins@gmail.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"Ira W. Snyder" <iws@ovro.caltech.edu>,
netdev@vger.kernel.org,
virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
linux-kernel@vger.kernel.org, mingo@elte.hu, linux-mm@kvack.org,
akpm@linux-foundation.org, hpa@zytor.com,
Rusty Russell <rusty@rustcorp.com.au>,
s.hetze@linux-ag.com, alacrityvm-devel@lists.sourceforge.net
Subject: Re: [PATCHv5 3/3] vhost_net: a kernel-level virtio server
Date: Tue, 15 Sep 2009 18:03:17 +0300 [thread overview]
Message-ID: <4AAFACB5.9050808@redhat.com> (raw)
In-Reply-To: <4AAF9BAF.3030109@gmail.com>
On 09/15/2009 04:50 PM, Gregory Haskins wrote:
>> Why? vhost will call get_user_pages() or copy_*_user() which ought to
>> do the right thing.
>>
> I was speaking generally, not specifically to Ira's architecture. What
> I mean is that vbus was designed to work without assuming that the
> memory is pageable. There are environments in which the host is not
> capable of mapping hvas/*page, but the memctx->copy_to/copy_from
> paradigm could still work (think rdma, for instance).
>
Sure, vbus is more flexible here.
>>> As an aside: a bigger issue is that, iiuc, Ira wants more than a single
>>> ethernet channel in his design (multiple ethernets, consoles, etc). A
>>> vhost solution in this environment is incomplete.
>>>
>>>
>> Why? Instantiate as many vhost-nets as needed.
>>
> a) what about non-ethernets?
>
There's virtio-console, virtio-blk etc. None of these have kernel-mode
servers, but these could be implemented if/when needed.
> b) what do you suppose this protocol to aggregate the connections would
> look like? (hint: this is what a vbus-connector does).
>
You mean multilink? You expose the device as a multiqueue.
> c) how do you manage the configuration, especially on a per-board basis?
>
pci (for kvm/x86).
> Actually I have patches queued to allow vbus to be managed via ioctls as
> well, per your feedback (and it solves the permissions/lifetime
> critisims in alacrityvm-v0.1).
>
That will make qemu integration easier.
>> The only difference is the implementation. vhost-net
>> leaves much more to userspace, that's the main difference.
>>
> Also,
>
> *) vhost is virtio-net specific, whereas vbus is a more generic device
> model where thing like virtio-net or venet ride on top.
>
I think vhost-net is separated into vhost and vhost-net.
> *) vhost is only designed to work with environments that look very
> similar to a KVM guest (slot/hva translatable). vbus can bridge various
> environments by abstracting the key components (such as memory access).
>
Yes. virtio is really virtualization oriented.
> *) vhost requires an active userspace management daemon, whereas vbus
> can be driven by transient components, like scripts (ala udev)
>
vhost by design leaves configuration and handshaking to userspace. I
see it as an advantage.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2009-09-15 15:04 UTC|newest]
Thread overview: 230+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1251388414.git.mst@redhat.com>
2009-08-27 16:06 ` [PATCHv5 1/3] mm: export use_mm/unuse_mm to modules Michael S. Tsirkin
2009-08-27 16:06 ` Michael S. Tsirkin
2009-08-27 16:06 ` Michael S. Tsirkin
2009-08-28 15:31 ` Gregory Haskins
2009-08-28 15:31 ` Gregory Haskins
2009-08-27 16:06 ` Michael S. Tsirkin
2009-08-27 16:07 ` [PATCHv5 2/3] mm: reduce atomic use on use_mm fast path Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-08-27 16:07 ` [PATCHv5 3/3] vhost_net: a kernel-level virtio server Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-08-27 16:07 ` Michael S. Tsirkin
2009-09-03 18:39 ` Ira W. Snyder
2009-09-03 18:39 ` Ira W. Snyder
2009-09-07 10:15 ` Michael S. Tsirkin
2009-09-07 10:15 ` Michael S. Tsirkin
2009-09-07 10:15 ` Michael S. Tsirkin
2009-09-08 17:20 ` Ira W. Snyder
2009-09-08 17:20 ` Ira W. Snyder
2009-09-08 17:20 ` Ira W. Snyder
2009-09-08 20:14 ` Michael S. Tsirkin
2009-09-08 20:14 ` Michael S. Tsirkin
2009-09-08 20:14 ` Michael S. Tsirkin
2009-09-11 15:17 ` Xin, Xiaohui
2009-09-11 15:17 ` Xin, Xiaohui
2009-09-13 5:46 ` Michael S. Tsirkin
2009-09-13 5:46 ` Michael S. Tsirkin
2009-09-13 5:46 ` Michael S. Tsirkin
2009-09-14 5:57 ` Xin, Xiaohui
2009-09-14 5:57 ` Xin, Xiaohui
2009-09-14 5:57 ` Xin, Xiaohui
2009-09-14 7:05 ` Michael S. Tsirkin
2009-09-14 7:05 ` Michael S. Tsirkin
2009-09-14 7:05 ` Michael S. Tsirkin
2009-09-11 15:17 ` Xin, Xiaohui
2009-09-11 16:00 ` Gregory Haskins
2009-09-11 16:14 ` Gregory Haskins
2009-09-11 16:14 ` Gregory Haskins
2009-09-13 12:01 ` Michael S. Tsirkin
2009-09-13 12:01 ` Michael S. Tsirkin
2009-09-14 16:08 ` Gregory Haskins
2009-09-14 16:47 ` Michael S. Tsirkin
2009-09-14 16:47 ` Michael S. Tsirkin
2009-09-14 19:14 ` Gregory Haskins
2009-09-14 19:14 ` Gregory Haskins
2009-09-15 12:35 ` Avi Kivity
2009-09-15 12:35 ` Avi Kivity
2009-09-15 13:03 ` Gregory Haskins
2009-09-15 13:03 ` Gregory Haskins
2009-09-15 13:25 ` Avi Kivity
2009-09-15 13:25 ` Avi Kivity
2009-09-15 13:25 ` Avi Kivity
2009-09-15 13:50 ` Gregory Haskins
2009-09-15 14:28 ` Michael S. Tsirkin
2009-09-15 14:28 ` Michael S. Tsirkin
2009-09-15 14:28 ` Michael S. Tsirkin
2009-09-15 15:03 ` Avi Kivity
2009-09-15 15:03 ` Avi Kivity [this message]
2009-09-15 15:03 ` Avi Kivity
2009-09-15 20:08 ` Gregory Haskins
2009-09-15 20:08 ` Gregory Haskins
2009-09-15 20:40 ` Michael S. Tsirkin
2009-09-15 20:40 ` Michael S. Tsirkin
2009-09-15 20:43 ` Gregory Haskins
2009-09-15 21:25 ` Michael S. Tsirkin
2009-09-15 21:25 ` Michael S. Tsirkin
2009-09-15 21:39 ` Gregory Haskins
2009-09-15 21:39 ` Gregory Haskins
2009-09-15 21:38 ` Michael S. Tsirkin
2009-09-15 21:38 ` Michael S. Tsirkin
2009-09-15 21:55 ` Gregory Haskins
2009-09-15 21:55 ` Gregory Haskins
2009-09-15 21:38 ` Michael S. Tsirkin
2009-09-16 14:57 ` Arnd Bergmann
2009-09-16 14:57 ` Arnd Bergmann
2009-09-16 15:13 ` Michael S. Tsirkin
2009-09-16 15:13 ` Michael S. Tsirkin
2009-09-16 15:13 ` Michael S. Tsirkin
2009-09-16 15:22 ` Arnd Bergmann
2009-09-16 15:22 ` Arnd Bergmann
2009-09-16 16:08 ` Michael S. Tsirkin
2009-09-16 16:08 ` Michael S. Tsirkin
2009-09-16 16:08 ` Michael S. Tsirkin
2009-09-16 15:22 ` Arnd Bergmann
2009-09-16 14:57 ` Arnd Bergmann
2009-09-15 21:25 ` Michael S. Tsirkin
2009-09-15 20:43 ` Gregory Haskins
2009-09-15 20:40 ` Michael S. Tsirkin
2009-09-16 8:23 ` Avi Kivity
2009-09-16 8:23 ` Avi Kivity
2009-09-16 11:44 ` Gregory Haskins
2009-09-16 11:44 ` Gregory Haskins
2009-09-16 13:05 ` Avi Kivity
2009-09-16 13:05 ` Avi Kivity
2009-09-16 14:10 ` Gregory Haskins
2009-09-16 14:10 ` Gregory Haskins
2009-09-16 14:10 ` Gregory Haskins
2009-09-16 15:59 ` Avi Kivity
2009-09-16 15:59 ` Avi Kivity
2009-09-16 15:59 ` Avi Kivity
2009-09-16 19:22 ` Gregory Haskins
2009-09-16 19:22 ` Gregory Haskins
2009-09-16 21:00 ` Avi Kivity
2009-09-16 21:00 ` Avi Kivity
2009-09-16 21:00 ` Avi Kivity
2009-09-17 3:11 ` Gregory Haskins
2009-09-17 3:11 ` Gregory Haskins
2009-09-17 7:49 ` Avi Kivity
2009-09-17 7:49 ` Avi Kivity
2009-09-17 7:49 ` Avi Kivity
2009-09-17 14:16 ` Javier Guerra
2009-09-17 14:16 ` Javier Guerra
2009-09-17 14:16 ` Javier Guerra
2009-09-21 21:43 ` Ira W. Snyder
2009-09-21 21:43 ` Ira W. Snyder
2009-09-22 9:43 ` Avi Kivity
2009-09-22 9:43 ` Avi Kivity
2009-09-22 15:25 ` Ira W. Snyder
2009-09-22 15:25 ` Ira W. Snyder
2009-09-22 15:25 ` Ira W. Snyder
2009-09-22 15:56 ` Avi Kivity
2009-09-22 15:56 ` Avi Kivity
2009-09-22 15:56 ` Avi Kivity
2009-09-23 14:26 ` Gregory Haskins
2009-09-23 14:37 ` Avi Kivity
2009-09-23 14:37 ` Avi Kivity
2009-09-23 15:10 ` Gregory Haskins
2009-09-23 17:58 ` Gregory Haskins
2009-09-23 19:37 ` Avi Kivity
2009-09-23 19:37 ` Avi Kivity
2009-09-23 19:37 ` Avi Kivity
2009-09-23 21:15 ` Gregory Haskins
2009-09-23 21:15 ` Gregory Haskins
2009-09-24 7:18 ` Avi Kivity
2009-09-24 7:18 ` Avi Kivity
2009-09-24 7:18 ` Avi Kivity
2009-09-24 18:03 ` Gregory Haskins
2009-09-24 18:03 ` Gregory Haskins
2009-09-25 8:22 ` Avi Kivity
2009-09-25 8:22 ` Avi Kivity
2009-09-25 8:22 ` Avi Kivity
2009-09-25 21:32 ` Gregory Haskins
2009-09-25 21:32 ` Gregory Haskins
2009-09-27 9:43 ` Avi Kivity
2009-09-27 9:43 ` Avi Kivity
2009-09-27 9:43 ` Avi Kivity
2009-09-30 20:04 ` Gregory Haskins
2009-09-30 20:04 ` Gregory Haskins
2009-10-01 8:34 ` Avi Kivity
2009-10-01 8:34 ` Avi Kivity
2009-10-01 8:34 ` Avi Kivity
2009-10-01 8:34 ` Avi Kivity
2009-10-01 9:28 ` Michael S. Tsirkin
2009-10-01 9:28 ` Michael S. Tsirkin
2009-10-01 9:28 ` Michael S. Tsirkin
2009-10-01 19:24 ` Gregory Haskins
2009-10-03 10:00 ` Avi Kivity
2009-10-03 10:00 ` Avi Kivity
2009-10-03 10:00 ` Avi Kivity
2009-10-01 19:24 ` Gregory Haskins
2009-09-24 19:27 ` Ira W. Snyder
2009-09-24 19:27 ` Ira W. Snyder
2009-09-25 7:43 ` Avi Kivity
2009-09-25 7:43 ` Avi Kivity
2009-09-25 7:43 ` Avi Kivity
2009-09-24 19:27 ` Ira W. Snyder
2009-09-24 8:03 ` Avi Kivity
2009-09-24 8:03 ` Avi Kivity
2009-09-24 8:03 ` Avi Kivity
2009-09-24 18:04 ` Gregory Haskins
2009-09-24 18:04 ` Gregory Haskins
2009-09-23 17:58 ` Gregory Haskins
2009-09-23 15:10 ` Gregory Haskins
2009-09-23 14:37 ` Avi Kivity
2009-09-23 14:26 ` Gregory Haskins
2009-09-22 9:43 ` Avi Kivity
2009-09-21 21:43 ` Ira W. Snyder
2009-09-17 3:57 ` Michael S. Tsirkin
2009-09-17 3:57 ` Michael S. Tsirkin
2009-09-17 3:57 ` Michael S. Tsirkin
2009-09-17 4:13 ` Gregory Haskins
2009-09-17 4:13 ` Gregory Haskins
2009-09-16 13:05 ` Avi Kivity
2009-09-16 8:23 ` Avi Kivity
2009-09-15 13:50 ` Gregory Haskins
2009-09-15 12:35 ` Avi Kivity
2009-09-15 12:32 ` Avi Kivity
2009-09-15 12:32 ` Avi Kivity
2009-09-15 12:32 ` Avi Kivity
2009-09-14 16:47 ` Michael S. Tsirkin
2009-09-14 16:53 ` Michael S. Tsirkin
2009-09-14 16:53 ` Michael S. Tsirkin
2009-09-14 19:28 ` Gregory Haskins
2009-09-14 19:28 ` Gregory Haskins
2009-09-14 16:53 ` Michael S. Tsirkin
2009-09-14 16:08 ` Gregory Haskins
2009-09-13 12:01 ` Michael S. Tsirkin
2009-09-11 16:00 ` Gregory Haskins
2009-09-03 18:39 ` Ira W. Snyder
2009-09-25 17:01 ` Ira W. Snyder
2009-09-25 17:01 ` Ira W. Snyder
2009-09-25 17:01 ` Ira W. Snyder
2009-09-27 7:43 ` Michael S. Tsirkin
2009-09-27 7:43 ` Michael S. Tsirkin
2009-09-27 7:43 ` Michael S. Tsirkin
[not found] <E88DD564E9DC5446A76B2B47C3BCCA150219600F9B@pdsmsx503.ccr.corp.intel.com>
2009-08-31 11:42 ` Xin, Xiaohui
2009-08-31 11:42 ` Xin, Xiaohui
2009-08-31 11:42 ` Xin, Xiaohui
2009-08-31 15:23 ` Arnd Bergmann
2009-08-31 15:23 ` Arnd Bergmann
2009-08-31 15:23 ` Arnd Bergmann
2009-09-01 14:58 ` Xin, Xiaohui
2009-09-01 14:58 ` Xin, Xiaohui
2009-09-01 14:58 ` Xin, Xiaohui
2009-08-31 17:52 ` Avi Kivity
2009-08-31 17:52 ` Avi Kivity
2009-08-31 21:56 ` Anthony Liguori
2009-08-31 21:56 ` Anthony Liguori
2009-08-31 21:56 ` Anthony Liguori
2009-09-01 15:37 ` Xin, Xiaohui
2009-09-01 15:37 ` Xin, Xiaohui
2009-09-01 15:37 ` Xin, Xiaohui
2009-09-01 5:04 ` Xin, Xiaohui
2009-09-01 5:04 ` Xin, Xiaohui
2009-09-01 5:04 ` Xin, Xiaohui
2009-08-31 17:52 ` Avi Kivity
2009-08-31 11:42 ` Xin, Xiaohui
2009-08-31 11:42 ` Xin, Xiaohui
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=4AAFACB5.9050808@redhat.com \
--to=avi@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=alacrityvm-devel@lists.sourceforge.net \
--cc=gregory.haskins@gmail.com \
--cc=hpa@zytor.com \
--cc=iws@ovro.caltech.edu \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@elte.hu \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
--cc=s.hetze@linux-ag.com \
--cc=virtualization@lists.linux-foundation.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.