From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: PV PCI passthrough - summary/status Date: Mon, 26 Oct 2009 11:03:21 -0400 Message-ID: <20091026150321.GA6969@phenom.dumpdata.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com, Jeremy Fitzhardinge List-Id: xen-devel@lists.xenproject.org There has been a sudden flurry of folks using the PCI pass-through and I thought this would be a good time to give an update on its status in the PV OPS side. Please keep in mind this is for PV guests, not HVM (well, kind of - there is one overlap - BAR page alignment). There are four outstanding issues: - MSI support (No API for pci-back to pass the domain ID to Xen's Dom0 MSI support: xen_setup_msi_irq). One idea I am slowly prototyping is for xen_create_msi_irq to enumerate the XenStore keys and see if the PCI device in question also residies in /local/domain/0/pci/X/Y/ and extract the domain ID from that. The beauty of this is that it can also be used by the Xen-SWIOTLB to determine whether it should turn itself on for DomU guests. - PCI front support. Haven't started on this. - BAR page alignment. Looking to see if Xen/xc.c can handle mapping of a offset within a page. This way this requirment (need a page-aligned BAR) can be eliminated. Or if this is a no-go see if there is a security risk in passing the whole page to the guest. Lastly if none of this works, revisit the 2.6.18 'reassign_resources' patch that sets the BARs to page-aligned addresses. - Bug #1340: The Function Level Reset reset requires that PCI devices behind a bridge be owned by the same guest. Based on the comments, without the FLR capability in 3.2, the PCI devices worked fine. We could provie a 'flr_inhibit' flag which would revert back to 3.2 and not do an FLR? Any suggestions, etc., are much welcome.