public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
To: ron minnich <rminnich-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Jimi Xenidis <jimix-aZOuKsOsJu3MbYB6QlFGEg@public.gmane.org>,
	"jmk-zzFmDc4TPjtKvsKVC3L/VUEOCMrvLtNR@public.gmane.org"
	<jmk-zzFmDc4TPjtKvsKVC3L/VUEOCMrvLtNR@public.gmane.org>,
	kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	mschwid2-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
	Christian Borntraeger
	<CBORNTRA-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>,
	Suzanne McIntosh
	<skranjac-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH/RFC 7/9] Virtual network guest device driver
Date: Mon, 21 May 2007 20:13:45 -0500	[thread overview]
Message-ID: <465243C9.2090900@codemonkey.ws> (raw)
In-Reply-To: <13426df10705211745r69acc95ai458b2192fe0d0132-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

ron minnich wrote:
> On 5/21/07, Anthony Liguori <anthony-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org> wrote:
>> No.  You're confusing PV device discovery with the actual paravirtual
>> transport.  In a fully virtual environment like KVM, a PCI bus is
>> present.  You need some way for the guest to detect that a PV device is
>> present.  The most natural way to do this IMHO is to have an entry for
>> the PV device in the PCI bus.  That will make a lot of existing code 
>> happy.
>>
>
> I don't think I am confusing it, now that you've explained it more
> fully. I'm even less happy with it :-)

Sometimes I think the best way to make you happy is to just stop talking :-)

> How will I explain this sort of thing to my grandchildren? :-)
> "grandpop, why do those PV devices look like a bus defined in 1994?"
>
> Why would you not have, e.g., a 9p server for PV device "config space"
> as well? I actually implemented that on Xen -- it was quite trivial,
> and it makes more sense -- to me anyway -- than pretending a PV device
> is something it's not.
>
> What it happening, it seems to me, is that people are still trying to
> use an abstraction -- "PCI device" -- which is not really an
> abstraction, to model aspects of PV device discovery, enumeration,
> configuration and operation. I'm still pretty uncomfortable with it --
> well, honestly, it seems kind of gross to me. It's just as easy to
> build the right abstraction underneath all this, and then, for those
> OSes that have existing code that needs to be happy, present that
> abstraction as a PCI bus. But making the PCI bus the underlying
> abstraction is getting the order inverted,I believe.

Okay.  The first problem here is that you're assuming that I'm 
suggesting that this who thing mandate a PCI bus.  I'm not.  I'm merely 
saying that one possible way to implement this is by using a PCI bus to 
discover the existing of a VIRTLINK socket.  Clearly, the s390 guys 
would have to use something else.

For PV Xen where there is no PCI bus, XenBus would be used.  So very 
concretely, there are three separate classes of problems:

1) How to determine that a VM can use virtlink sockets
2) How to enumerate paravirtual devices
3) The various PV protocols for each device

Whatever Linux implements, it has to allow multiple implementations for 
#1.  For x86 VMs, PCI is just the easiest thing to do here.  You could 
do hypercalls but it gets messy on different hypervisors (vmcall with 0 
in eax may do something funky in Xen but be the probing hypercall on KVM).

For #2, I'm not really proposing anything concrete.  One possibility is 
to allow virtlink sockets to be addressed with a "service" and to use 
that.  That doesn't allow for enumeration though so it may not be perfect.

I'm not proposing anything at all for #3.  That's outside the scope of 
this discussion in my mind.

Now, once you have a virtlink socket, could you use p9 to implement #2 
and #3?  Sounds like something you could write a paper about :-) But 
that's later argument.  Right now, I'm just focused on solving the boot 
strap issue.

Hope this clarifies things a bit.

Regards,

Anthony Liguori

> I realize that PCI device space is a pretty handy way to do this, that
> it is very convenient. I wonder what happens when you get a system
> without enough "holes" in the config space for you to hide the PV
> devices in, or that has some other weird property that breaks this
> model. I've already worked with one system that had 32 PCI busses.
>
> There are other hypervisors that made convenient choices over the
> right choice, and they are paying for it. Let's try to avoid that on
> kvm. Kvm has so much going for it right now.
>
> thanks
>
> ron
>


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

  parent reply	other threads:[~2007-05-22  1:13 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1178903957.25135.13.camel@cotte.boeblingen.de.ibm.com>
     [not found] ` <1178903957.25135.13.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-11 17:35   ` [PATCH/RFC 2/9] s390 virtualization interface Carsten Otte
2007-05-11 17:35   ` [PATCH/RFC 3/9] s390 guest detection Carsten Otte
2007-05-11 17:35   ` [PATCH/RFC 4/9] Basic guest virtual devices infrastructure Carsten Otte
     [not found]     ` <1178904958.25135.31.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-11 20:06       ` Arnd Bergmann
2007-05-14 11:26       ` Avi Kivity
     [not found]         ` <46484753.30602-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-14 11:43           ` Carsten Otte
     [not found]             ` <46484B5D.6080605-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-14 12:00               ` [PATCH/RFC 4/9] Basic guest virtualdevices infrastructure Dor Laor
     [not found]                 ` <64F9B87B6B770947A9F8391472E032160BC7483D-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-05-14 13:32                   ` Carsten Otte
2007-05-11 17:36   ` [PATCH/RFC 5/9] s390 virtual console for guests Carsten Otte
     [not found]     ` <1178904960.25135.32.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-11 19:00       ` Anthony Liguori
     [not found]         ` <4644BD3C.8040901-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-11 19:42           ` Christian Bornträger
2007-05-12  8:07           ` Carsten Otte
2007-05-14 16:23           ` Christian Bornträger
     [not found]             ` <200705141823.13424.cborntra-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-14 16:48               ` Christian Borntraeger
     [not found]                 ` <200705141848.18996.borntrae-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-14 17:49                   ` Anthony Liguori
     [not found]                     ` <4648A11D.3050607-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-15  0:27                       ` Arnd Bergmann
2007-05-15  7:54                       ` Carsten Otte
2007-05-11 17:36   ` [PATCH/RFC 6/9] virtual block device driver Carsten Otte
     [not found]     ` <1178904963.25135.33.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-14 11:49       ` Avi Kivity
     [not found]         ` <46484CDF.505-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-14 13:23           ` Carsten Otte
     [not found]             ` <464862E9.7020105-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-14 14:39               ` Avi Kivity
     [not found]                 ` <46487494.1070802-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-15 11:47                   ` Carsten Otte
     [not found]                     ` <46499DE9.9090202-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-16 10:01                       ` Avi Kivity
2007-05-14 11:52       ` Avi Kivity
     [not found]         ` <46484D84.3060601-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-14 13:26           ` Carsten Otte
2007-05-11 17:36   ` [PATCH/RFC 7/9] Virtual network guest " Carsten Otte
     [not found]     ` <1178904965.25135.34.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-11 19:44       ` ron minnich
     [not found]         ` <13426df10705111244w1578ebedy8259bc42ca1f588d-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-11 20:12           ` Anthony Liguori
     [not found]             ` <4644CE15.6080505-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-11 21:15               ` Eric Van Hensbergen
     [not found]                 ` <a4e6962a0705111415n47e77a15o331b59cf2a03b4-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-11 21:47                   ` Anthony Liguori
     [not found]                     ` <4644E456.2060507-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-11 22:21                       ` Eric Van Hensbergen
     [not found]                         ` <a4e6962a0705111521v2d451ddcjecf209e2031c85af-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-16 17:28                           ` Anthony Liguori
     [not found]                             ` <464B3F20.4030904-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-16 17:38                               ` Daniel P. Berrange
     [not found]                                 ` <20070516173822.GD16863-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2007-05-17  9:29                                   ` Carsten Otte
     [not found]                                     ` <464C2069.20909-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-17 14:22                                       ` Anthony Liguori
     [not found]                                         ` <464C651F.5070700-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-21 11:11                                           ` Christian Borntraeger
2007-05-16 17:41                               ` Eric Van Hensbergen
     [not found]                                 ` <a4e6962a0705161041s5393c1a6wc455b20ff3fe8106-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-16 18:47                                   ` Anthony Liguori
     [not found]                                     ` <464B51A8.7050307-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-16 19:33                                       ` Eric Van Hensbergen
2007-05-16 17:45                               ` Gregory Haskins
     [not found]                                 ` <464B0ADB.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-05-16 18:39                                   ` Anthony Liguori
     [not found]                                     ` <464B4FEB.7070300-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-16 18:57                                       ` Gregory Haskins
     [not found]                                         ` <464B1B9C.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-05-16 19:10                                           ` Anthony Liguori
     [not found]                                             ` <464B572C.6090800-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-17  4:24                                               ` Rusty Russell
     [not found]                                                 ` <1179375881.21871.83.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-05-17 16:13                                                   ` Anthony Liguori
     [not found]                                                     ` <464C7F45.50908-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-17 23:34                                                       ` Rusty Russell
2007-05-21  9:07                                               ` Christian Borntraeger
     [not found]                                                 ` <OFC1AADF6F.DB57C7AC-ON422572E2.0030BE22-422572E2.0032174C-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-21  9:27                                                   ` Cornelia Huck
2007-05-21 11:28                                                   ` Arnd Bergmann
     [not found]                                                     ` <200705211328.04565.arnd-r2nGTMty4D4@public.gmane.org>
2007-05-21 11:56                                                       ` Cornelia Huck
     [not found]                                                         ` <20070521135628.17a4f9cc-XQvu0L+U/CiXI4yAdoq52KN5r0PSdgG1zG2AekJRRhI@public.gmane.org>
2007-05-21 13:53                                                           ` Arnd Bergmann
2007-05-21 18:45                                                       ` Anthony Liguori
     [not found]                                                         ` <4651E8D1.4010208-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-21 23:09                                                           ` ron minnich
     [not found]                                                             ` <13426df10705211609j613032c6j373d9a4660f8ec6c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22  0:29                                                               ` Anthony Liguori
     [not found]                                                                 ` <46523952.7070405-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-22  0:45                                                                   ` ron minnich
     [not found]                                                                     ` <13426df10705211745r69acc95ai458b2192fe0d0132-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22  1:13                                                                       ` Anthony Liguori [this message]
2007-05-22  1:34                                                                   ` Eric Van Hensbergen
     [not found]                                                                     ` <a4e6962a0705211834s4db19c7t3b95765bf2c092d7-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22  1:42                                                                       ` Anthony Liguori
     [not found]                                                                         ` <46524A79.8070004-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-22  5:17                                                                           ` Avi Kivity
     [not found]                                                                             ` <46527CD9.5000603-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-22 12:49                                                                               ` Eric Van Hensbergen
     [not found]                                                                                 ` <a4e6962a0705220549j1c9565f2ic160c672b74aea35-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22 12:56                                                                                   ` Christoph Hellwig
     [not found]                                                                                     ` <20070522125655.GA4506-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2007-05-22 14:50                                                                                       ` Eric Van Hensbergen
     [not found]                                                                                         ` <a4e6962a0705220750s5abe380dg8dd8e7d0b84de7cd-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22 15:05                                                                                           ` Anthony Liguori
     [not found]                                                                                             ` <465306AE.5080902-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-22 15:31                                                                                               ` ron minnich
2007-05-22 16:25                                                                                               ` Eric Van Hensbergen
     [not found]                                                                                                 ` <a4e6962a0705220925l580f136we269380fe3c9691c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22 17:00                                                                                                   ` ron minnich
     [not found]                                                                                                     ` <13426df10705221000i749badc5h8afe4f2fc95bc2ce-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22 17:06                                                                                                       ` Christoph Hellwig
     [not found]                                                                                                         ` <20070522170628.GA16624-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2007-05-22 17:34                                                                                                           ` ron minnich
     [not found]                                                                                                             ` <13426df10705221034k7baf5bccrc77aabca8c9e225c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-22 20:03                                                                                                               ` Dor Laor
     [not found]                                                                                                                 ` <64F9B87B6B770947A9F8391472E032160BF29F1E-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-05-22 20:10                                                                                                                   ` ron minnich
2007-05-22 22:56                                                                                                                   ` Nakajima, Jun
     [not found]                                                                                                                     ` <8FFF7E42E93CC646B632AB40643802A8032793AC-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-05-23  8:15                                                                                                                       ` Carsten Otte
     [not found]                                                                                                                         ` <4653F807.2010209-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-23 12:25                                                                                                                           ` Avi Kivity
2007-05-23 14:12                                                                                                                           ` Eric Van Hensbergen
     [not found]                                                                                                                             ` <a4e6962a0705230712pd8c2958m9dee6b2ccec0899d-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-23 23:02                                                                                                                               ` Arnd Bergmann
     [not found]                                                                                                                                 ` <200705240102.40795.arnd-r2nGTMty4D4@public.gmane.org>
2007-05-23 23:57                                                                                                                                   ` Eric Van Hensbergen
     [not found]                                                                                                                                     ` <a4e6962a0705231657n65946ba4n74393f7028b6d61c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-24  0:07                                                                                                                                       ` Eric Van Hensbergen
2007-05-23 12:21                                                                                                                       ` Avi Kivity
2007-05-23 12:16                                                                                                           ` Avi Kivity
     [not found]                                                                                                             ` <465430B2.7050101-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-23 12:20                                                                                                               ` Christoph Hellwig
2007-05-23 12:20                                                                                                       ` Avi Kivity
2007-05-23 11:55                                                                                           ` Avi Kivity
2007-05-22 13:08                                                                                   ` Anthony Liguori
2007-05-18  5:31                               ` ron minnich
     [not found]                                 ` <13426df10705172231y5e93d1f5y398d4f187a8978e1-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-18 14:31                                   ` Anthony Liguori
     [not found]                                     ` <464DB8A5.6080503-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-18 15:14                                       ` ron minnich
2007-05-11 21:51               ` ron minnich
2007-05-12  8:46           ` Carsten Otte
     [not found]             ` <46457EF9.2070706-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-13 12:04               ` Dor Laor
     [not found]                 ` <64F9B87B6B770947A9F8391472E032160BC74612-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-05-13 14:49                   ` Anthony Liguori
     [not found]                     ` <4647257F.4020900-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-13 16:23                       ` Dor Laor
     [not found]                         ` <64F9B87B6B770947A9F8391472E032160BC74675-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-05-13 16:49                           ` Anthony Liguori
     [not found]                             ` <4647418A.2040201-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-13 17:06                               ` Muli Ben-Yehuda
     [not found]                                 ` <20070513170608.GA4343-WD1JZD8MxeCTrf4lBMg6DdBPR1lH4CV8@public.gmane.org>
2007-05-13 20:31                                   ` Dor Laor
2007-05-14  2:39                               ` Rusty Russell
2007-05-14 11:53                               ` Avi Kivity
2007-05-14 12:05           ` Avi Kivity
     [not found]             ` <46485070.3000106-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-14 12:24               ` Christian Bornträger
     [not found]                 ` <200705141424.44423.cborntra-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-05-14 12:32                   ` Avi Kivity
2007-05-14 13:36               ` Carsten Otte
2007-05-11 17:36   ` [PATCH/RFC 8/9] Virtual network host switch support Carsten Otte
     [not found]     ` <1178904968.25135.35.camel-WIxn4w2hgUz3YA32ykw5MLlKpX0K8NHHQQ4Iyu8u01E@public.gmane.org>
2007-05-11 20:21       ` Anthony Liguori
     [not found]         ` <4644D048.7060106-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2007-05-11 20:50           ` Christian Bornträger
2007-05-11 17:36   ` [PATCH/RFC 9/9] Fix system<->user misaccount of interpreted execution Carsten Otte

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=465243C9.2090900@codemonkey.ws \
    --to=anthony-rdkfgonbjusknkdkm+me6a@public.gmane.org \
    --cc=CBORNTRA-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org \
    --cc=jimix-aZOuKsOsJu3MbYB6QlFGEg@public.gmane.org \
    --cc=jmk-zzFmDc4TPjtKvsKVC3L/VUEOCMrvLtNR@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=mschwid2-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=rminnich-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=skranjac-r/Jw6+rmf7HQT0dZR+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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox