All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: Zachary Amsden <zach-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	virtualization-qjLDD68F18O7TbgM5vRIOg@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Eric Van Hensbergen
	<ericvanhensbergen-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH 3/3] virtio PCI device
Date: Thu, 22 Nov 2007 09:32:43 +0200	[thread overview]
Message-ID: <4745309B.8050404@qumranet.com> (raw)
In-Reply-To: <1195669377.6352.247.camel-cxY/u30q8FloTgUnLF1by8fTvwmfpRNyZeezCHUQhQ4@public.gmane.org>

Zachary Amsden wrote:
> On Wed, 2007-11-21 at 09:13 +0200, Avi Kivity wrote:
>
>   
>> Where the device is implemented is an implementation detail that should 
>> be hidden from the guest, isn't that one of the strengths of 
>> virtualization?  Two examples: a file-based block device implemented in 
>> qemu gives you fancy file formats with encryption and compression, while 
>> the same device implemented in the kernel gives you a low-overhead path 
>> directly to a zillion-disk SAN volume.  Or a user-level network device 
>> capable of running with the slirp stack and no permissions vs. the 
>> kernel device running copyless most of the time and using a dma engine 
>> for the rest but requiring you to be good friends with the admin.
>>
>> The user should expect zero reconfigurations moving a VM from one model 
>> to the other.
>>     
>
> I think that is pretty insightful, and indeed, is probably the only
> reason we would ever consider using a virtio based driver.
>
> But is this really a virtualization problem, and is virtio the right
> place to solve it?  Doesn't I/O hotplug with multipathing or NIC teaming
> provide the same infrastructure in a way that is useful in more than
> just a virtualization context?
>   

With the aid of a dictionary I was able to understand about half the 
words in the last sentence.  Moving from device to device using 
hotplug+multipath is complex to configure, available on only some 
guests, uses rarely-exercised paths in the guest OS, and only works for 
a few types of devices (network and block).  Having host independence in 
the device means you can change the device implementation for, say, a 
display driver (consider, for example, a vmgl+virtio driver, which can 
be implemented in userspace or tunneled via virtio-over-tcp to some 
remote display without going through userspace, without the guest 
knowing about it).

-- 
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
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/

WARNING: multiple messages have this Message-ID (diff)
From: Avi Kivity <avi@qumranet.com>
To: Zachary Amsden <zach@vmware.com>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
	kvm-devel@lists.sourceforge.net, virtualization@lists.osdl.org,
	linux-kernel@vger.kernel.org,
	Eric Van Hensbergen <ericvanhensbergen@us.ibm.com>
Subject: Re: [kvm-devel] [PATCH 3/3] virtio PCI device
Date: Thu, 22 Nov 2007 09:32:43 +0200	[thread overview]
Message-ID: <4745309B.8050404@qumranet.com> (raw)
In-Reply-To: <1195669377.6352.247.camel@bodhitayantram.eng.vmware.com>

Zachary Amsden wrote:
> On Wed, 2007-11-21 at 09:13 +0200, Avi Kivity wrote:
>
>   
>> Where the device is implemented is an implementation detail that should 
>> be hidden from the guest, isn't that one of the strengths of 
>> virtualization?  Two examples: a file-based block device implemented in 
>> qemu gives you fancy file formats with encryption and compression, while 
>> the same device implemented in the kernel gives you a low-overhead path 
>> directly to a zillion-disk SAN volume.  Or a user-level network device 
>> capable of running with the slirp stack and no permissions vs. the 
>> kernel device running copyless most of the time and using a dma engine 
>> for the rest but requiring you to be good friends with the admin.
>>
>> The user should expect zero reconfigurations moving a VM from one model 
>> to the other.
>>     
>
> I think that is pretty insightful, and indeed, is probably the only
> reason we would ever consider using a virtio based driver.
>
> But is this really a virtualization problem, and is virtio the right
> place to solve it?  Doesn't I/O hotplug with multipathing or NIC teaming
> provide the same infrastructure in a way that is useful in more than
> just a virtualization context?
>   

With the aid of a dictionary I was able to understand about half the 
words in the last sentence.  Moving from device to device using 
hotplug+multipath is complex to configure, available on only some 
guests, uses rarely-exercised paths in the guest OS, and only works for 
a few types of devices (network and block).  Having host independence in 
the device means you can change the device implementation for, say, a 
display driver (consider, for example, a vmgl+virtio driver, which can 
be implemented in userspace or tunneled via virtio-over-tcp to some 
remote display without going through userspace, without the guest 
knowing about it).

-- 
error compiling committee.c: too many arguments to function


  parent reply	other threads:[~2007-11-22  7:32 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-08  2:46 [PATCH 0/3] virtio PCI driver Anthony Liguori
     [not found] ` <11944899922822-git-send-email-aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08  2:46   ` [PATCH 1/3] Export vring functions for modules to use Anthony Liguori
2007-11-08  2:46     ` Anthony Liguori
     [not found]     ` <11944900141678-git-send-email-aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08  2:46       ` [PATCH 2/3] Put the virtio under the virtualization menu Anthony Liguori
2007-11-08  2:46         ` Anthony Liguori
     [not found]         ` <11944900152750-git-send-email-aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08  2:46           ` [PATCH 3/3] virtio PCI device Anthony Liguori
2007-11-08  2:46             ` Anthony Liguori
     [not found]             ` <11944900163817-git-send-email-aliguori-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08  6:12               ` Avi Kivity
2007-11-08  6:12                 ` [kvm-devel] " Avi Kivity
     [not found]                 ` <4732A8E5.6090307-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-08 13:54                   ` Anthony Liguori
2007-11-08 13:54                     ` [kvm-devel] " Anthony Liguori
     [not found]                     ` <47331531.8070709-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08 14:37                       ` Avi Kivity
2007-11-08 14:37                         ` [kvm-devel] " Avi Kivity
     [not found]                         ` <47331F47.70304-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-08 15:06                           ` Anthony Liguori
2007-11-08 15:06                             ` [kvm-devel] " Anthony Liguori
     [not found]                             ` <473325EB.5090907-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-08 15:13                               ` Avi Kivity
2007-11-08 15:13                                 ` [kvm-devel] " Avi Kivity
2007-11-08 23:43                       ` Dor Laor
2007-11-08 23:43                         ` [kvm-devel] " Dor Laor
2007-11-08 15:24               ` Arnd Bergmann
2007-11-08 17:46               ` Arnd Bergmann
2007-11-08 17:46                 ` [kvm-devel] " Arnd Bergmann
     [not found]                 ` <200711081846.36821.arnd-r2nGTMty4D4@public.gmane.org>
2007-11-08 19:04                   ` Anthony Liguori
2007-11-08 19:04                     ` [kvm-devel] " Anthony Liguori
     [not found]                     ` <47335DC6.7090603-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-09 11:03                       ` Arnd Bergmann
2007-11-09 11:03                         ` [kvm-devel] " Arnd Bergmann
2007-11-09  0:39               ` Dor Laor
2007-11-09  0:39                 ` [kvm-devel] " Dor Laor
     [not found]                 ` <4733AC3A.20701-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-09  2:17                   ` Anthony Liguori
2007-11-09  2:17                     ` [kvm-devel] " Anthony Liguori
2007-11-20 15:01             ` Avi Kivity
2007-11-20 15:43               ` Anthony Liguori
2007-11-20 15:43                 ` Anthony Liguori
     [not found]                 ` <474300AD.4060509-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-20 16:12                   ` Avi Kivity
2007-11-20 16:12                     ` [kvm-devel] " Avi Kivity
     [not found]                     ` <4743076F.8000105-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-20 22:16                       ` Anthony Liguori
2007-11-20 22:16                         ` [kvm-devel] " Anthony Liguori
     [not found]                         ` <47435CCB.1050506-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-21  7:13                           ` Avi Kivity
2007-11-21  7:13                             ` [kvm-devel] " Avi Kivity
     [not found]                             ` <4743DAA4.70800-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-21 18:22                               ` Zachary Amsden
2007-11-21 18:22                                 ` [kvm-devel] " Zachary Amsden
     [not found]                                 ` <1195669377.6352.247.camel-cxY/u30q8FloTgUnLF1by8fTvwmfpRNyZeezCHUQhQ4@public.gmane.org>
2007-11-22  7:32                                   ` Avi Kivity [this message]
2007-11-22  7:32                                     ` Avi Kivity
2007-11-23 16:51                               ` Anthony Liguori
2007-11-23 16:51                                 ` Anthony Liguori
     [not found]                                 ` <4747051C.3090903-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-23 17:47                                   ` Avi Kivity
2007-11-23 17:47                                     ` [kvm-devel] " Avi Kivity
2007-11-26 19:18                                     ` Anthony Liguori
     [not found]                                       ` <474B1BF3.20901-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-11-27  9:02                                         ` Avi Kivity
2007-11-27  9:02                                           ` [kvm-devel] " Avi Kivity
     [not found]                                           ` <474BDD28.7050801-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-27  9:09                                             ` Carsten Otte
2007-11-27  9:09                                               ` [kvm-devel] " Carsten Otte
     [not found]                                               ` <474BDEDE.6060603-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-11-27  9:27                                                 ` Avi Kivity
2007-11-27  9:27                                                   ` Avi Kivity
     [not found]                                                   ` <474BE319.502-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-27 10:12                                                     ` Carsten Otte
2007-11-27 10:12                                                       ` [kvm-devel] " Carsten Otte
     [not found]                                                       ` <474BEDAB.3000305-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-11-27 10:19                                                         ` Avi Kivity
2007-11-27 10:19                                                           ` [kvm-devel] " Avi Kivity
     [not found]                                                           ` <474BEF28.9010005-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-27 10:28                                                             ` Carsten Otte
2007-11-27 10:28                                                               ` [kvm-devel] " Carsten Otte
     [not found]                                                               ` <474BF157.3080709-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-11-27 13:27                                                                 ` Dor Laor
2007-11-27  9:25                                             ` Arnd Bergmann
2007-11-27  9:25                                               ` Arnd Bergmann
2007-11-27  9:25                                               ` [kvm-devel] " Arnd Bergmann
2007-11-08  6:49           ` [PATCH 2/3] Put the virtio under the virtualization menu Avi Kivity
2007-11-08  6:49             ` [kvm-devel] " 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=4745309B.8050404@qumranet.com \
    --to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
    --cc=ericvanhensbergen-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=virtualization-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
    --cc=zach-pghWNbHTmq7QT0dZR+AlfA@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.