From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48252) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VOj3y-000384-RB for qemu-devel@nongnu.org; Wed, 25 Sep 2013 02:59:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VOj3s-0005pJ-Nz for qemu-devel@nongnu.org; Wed, 25 Sep 2013 02:59:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:27739) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VOj3s-0005oy-Gu for qemu-devel@nongnu.org; Wed, 25 Sep 2013 02:59:00 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r8P6wxo5011442 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Wed, 25 Sep 2013 02:58:59 -0400 Date: Wed, 25 Sep 2013 10:01:16 +0300 From: "Michael S. Tsirkin" Message-ID: <20130925070116.GA5436@redhat.com> References: <524162DE.1080705@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <524162DE.1080705@redhat.com> Subject: Re: [Qemu-devel] Attaching PCI devices to the PCIe root complex List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Laine Stump Cc: qemu list On Tue, Sep 24, 2013 at 06:01:02AM -0400, Laine Stump wrote: > When I added support for the Q35-based machinetypes to libvirt, I > specifically prohibited attaching any PCI devices (with the exception of > graphics controllers) to the PCIe root complex, That's wrong I think. Anything attached to RC is an integrated endpoint, and these can be PCI devices. > and had planned to > prevent attaching them to PCIe root ports (ioh3420 device) and PCIe > downstream switch ports (xio-3130 device) as well. I did this because, > even though qemu currently allows attaching a normal PCI device in any > of these three places, the restriction exists for real hardware and I > didn't see any guarantee that qemu wouldn't add the restriction in the > future in order to more closely emulate real hardware. > > However, since I did that, I've learned that many of the qemu "pci" > devices really should be considered as "pci or pcie". Gerd Hoffman lists > some of these cases in a bug he filed against libvirt: > > https://bugzilla.redhat.com/show_bug.cgi?id=1003983 > > I would like to loosen up the restrictions in libvirt, but want to make > sure that I don't allow something that could later be forbidden by qemu > (thus creating a compatibility problem during upgrades). Beyond Gerd's > specific requests to allow ehci, uhci, and hda controllers to attach to > PCIe ports, are there any other devices that I specifically should or > shouldn't allow? (I would rather be conservative in what I allow - it's > easy to allow more things later, but nearly impossible to revoke > permission once it's been allowed). IMO, we really need to grow an interface to query this kind of thing. -- MST