From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [PATCH 1/6] virtio interace Date: Sat, 22 Sep 2007 12:01:33 +0200 Message-ID: <200709221201.33865.arnd@arndb.de> References: <1190289808.7262.223.camel@localhost.localdomain> <200709211622.22005.arnd@arndb.de> <1190454934.27805.80.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Cc: kvm-devel , lguest , virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Rusty Russell Return-path: In-Reply-To: <1190454934.27805.80.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org> Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org Errors-To: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org List-Id: kvm.vger.kernel.org On Saturday 22 September 2007, Rusty Russell wrote: > But now each virtio device has two "struct device"s, not one. =A0 And > you've made up a fictional bus to do it. > = > Yet for PCI systems, it really is a PCI device; exposing a second bus to > userspace just because we put a layer in our implementation is poor > form. > = > Perhaps this is the easiest way of doing it. =A0But it's still wrong. I think it's just a matter of perspective. In the model I'm advocating, the PCI device is not the same as the virtio device but rather a virtio host bridge, very much like USB or SATA works. We could easily have multiple virtio devices behind one PCI device, but since virtual PCI devices are cheap, a one-to-one mapping makes sense for simplicity. Having two struct devices for an actual device is the price to pay for this, but I do think that creating a bus_type for virtio is the logical abstraction and not something we just make up to work around a deficiency in our device reprentation. Arnd <>< ------------------------------------------------------------------------- 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/