From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NtjLC-0007BW-MX for qemu-devel@nongnu.org; Mon, 22 Mar 2010 11:14:54 -0400 Received: from [199.232.76.173] (port=48913 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NtjLC-0007BH-D5 for qemu-devel@nongnu.org; Mon, 22 Mar 2010 11:14:54 -0400 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NtjLB-0007Ur-RJ for qemu-devel@nongnu.org; Mon, 22 Mar 2010 11:14:54 -0400 Received: from mx20.gnu.org ([199.232.41.8]:16738) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NtjLB-0007Un-KI for qemu-devel@nongnu.org; Mon, 22 Mar 2010 11:14:53 -0400 Received: from mail.codesourcery.com ([38.113.113.100]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NtjLA-0005mC-Cu for qemu-devel@nongnu.org; Mon, 22 Mar 2010 11:14:52 -0400 From: Paul Brook Subject: Re: [Qemu-devel] virtio block device and sysfs Date: Mon, 22 Mar 2010 15:14:48 +0000 References: <20100306224234.GA1145@torres.zugschlus.de> <4B96BECF.2000505@codemonkey.ws> <20100322123816.GF30984@torres.zugschlus.de> In-Reply-To: <20100322123816.GF30984@torres.zugschlus.de> MIME-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <201003221514.48811.paul@codesourcery.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: john cooper , Marc Haber > > John attempted this and it was reverted because the implementation > > exhausted the PCI config space. > > I don't understand that. Existig hardware devices dump much more of > their data such as vendor and model type information into the config > space, how can using a field that real hardware uses exhaust the > config space? I think you (collectively) are confusing three different things: - PCI config space: Not used in any significant way other than the standard fields (i.e. basic device ID and configuring BARs). Slow/hard to access. - PCI IO BAR: Used by virtio-pci devices to expose the virtio config space. Extremely limited resource (max. 64k for the whole system). On real hardware only really used for legacy interfaces because it's slow, cumbersome, and x86 specific. Unfortunately it currently seems to lower overhead than MMIO on KVM :-( - PCI MEM BAR (usually MMIO): How real devices expose themselves. Relatively large address space (megabytes) available. Paul