From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NtmgP-0007vP-Ic for qemu-devel@nongnu.org; Mon, 22 Mar 2010 14:49:01 -0400 Received: from [199.232.76.173] (port=49229 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NtmgO-0007vH-Th for qemu-devel@nongnu.org; Mon, 22 Mar 2010 14:49:01 -0400 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NtmgN-0002Xb-G7 for qemu-devel@nongnu.org; Mon, 22 Mar 2010 14:49:00 -0400 Received: from mail-fx0-f221.google.com ([209.85.220.221]:61030) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NtmgN-0002XX-5y for qemu-devel@nongnu.org; Mon, 22 Mar 2010 14:48:59 -0400 Received: by fxm21 with SMTP id 21so2072339fxm.2 for ; Mon, 22 Mar 2010 11:48:58 -0700 (PDT) Message-ID: <4BA7BB8F.9070601@codemonkey.ws> Date: Mon, 22 Mar 2010 13:48:47 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH 0/9] Virtio cleanups References: <20100322151742.GA19675@redhat.com> <4BA791D6.805@codemonkey.ws> <201003221616.29962.paul@codesourcery.com> In-Reply-To: <201003221616.29962.paul@codesourcery.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Brook Cc: Juan Quintela , qemu-devel@nongnu.org, "Michael S. Tsirkin" On 03/22/2010 11:16 AM, Paul Brook wrote: >> But look at the lguest virtio implement. We would definitely model a >> VirtIOBus if we implemented something like that in qemu. VirtIO really >> is designed to be a bus. >> > When you say "bus" you actually mean point-point connection, right[1]? > I don't see anything in virtio that allows arbitration of multiple devices, or > any particular need for one as it can be handled by the host bus bindings. > Virtio itself doesn't define any type of bus operations but is designed to let it nicely fit into existing bus infrastructures. If you look at something like lguest, instead of piggying backing on another bus, it introduces a bus as part of it's virtio infrastructure. It's basically a shared memory page in a well known location. Anyway, if you were to implement virtio-lguest in qemu, it would have to be a bus. Likewise, the virtio-s390 implement would also have to be a bus. So overall, virtio-pci is really just a special case of a virtio bus that only supports a single device. Whether you call that p2p I think is just a question of semantics. Regards, Anthony Liguori > Paul > > [1] Technically I suppose a p-t-p connection is a degenerate case of a bus. > While modern hardware busses (USB, PCIe) are electrically point-point, > logically they are usually a shared bus topology. >