[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] xend: passthrough: do not check non-page-aligned MMIO BAR if not strict-check
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1255678213 -3600 # Node ID bc27fe199094ec1e61228d1d775f45d3f6f1b684 # Parent 2370e16ab6d3a1c9de43babec48c8f14121d19bc xend: passthrough: do not check non-page-aligned MMIO BAR if not strict-check When the option pci-passthrough-strict-check of /etc/xen/xend-config.sxp is set to 'no', we don't check the non-page-aligned MMIO BAR. This could be useful in some cases, e.g., when there is only 1 device in the range of the page and we try to assign the device to pv guest. Signed-off-by: Dexuan Cui <dexuan.cui@xxxxxxxxx> --- tools/python/xen/xend/XendDomainInfo.py | 5 +++-- tools/python/xen/xend/server/pciif.py | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff -r 2370e16ab6d3 -r bc27fe199094 tools/python/xen/xend/XendDomainInfo.py --- a/tools/python/xen/xend/XendDomainInfo.py Fri Oct 16 08:28:47 2009 +0100 +++ b/tools/python/xen/xend/XendDomainInfo.py Fri Oct 16 08:30:13 2009 +0100 @@ -702,8 +702,9 @@ class XendDomainInfo: raise VmError(("pci: PCI Backend and pci-stub don't own device %s")\ %pci_device.name) + strict_check = xoptions.get_pci_dev_assign_strict_check() # Check non-page-aligned MMIO BAR. - if pci_device.has_non_page_aligned_bar and arch.type != "ia64": + if pci_device.has_non_page_aligned_bar and strict_check: raise VmError("pci: %s: non-page-aligned MMIO BAR found." % \ pci_device.name) @@ -711,7 +712,7 @@ class XendDomainInfo: if not self.info.is_hvm(): return - if not xoptions.get_pci_dev_assign_strict_check(): + if not strict_check: return # Check if there is intermediate PCIe switch bewteen the device and diff -r 2370e16ab6d3 -r bc27fe199094 tools/python/xen/xend/server/pciif.py --- a/tools/python/xen/xend/server/pciif.py Fri Oct 16 08:28:47 2009 +0100 +++ b/tools/python/xen/xend/server/pciif.py Fri Oct 16 08:30:13 2009 +0100 @@ -289,9 +289,6 @@ class PciController(DevController): raise VmError(("pci: PCI Backend and pci-stub don't own "+ \ "device %s\n") %(dev.name)) - if dev.has_non_page_aligned_bar and arch.type != "ia64": - raise VmError("pci: %s: non-page-aligned MMIO BAR found." % dev.name) - self.CheckSiblingDevices(fe_domid, dev) # We don't do FLR when we create domain and hotplug device into guest, @@ -367,6 +364,9 @@ class PciController(DevController): except Exception, e: raise VmError("pci: failed to locate device and "+ "parse its resources - "+str(e)) + + if dev.has_non_page_aligned_bar and strict_check: + raise VmError("pci: %s: non-page-aligned MMIO BAR found." % dev.name) # Check if there is intermediate PCIe switch bewteen the device and # Root Complex. _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |