|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] xend: passthrough: do not check non-page-
# 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
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] xend: passthrough: do not check non-page-aligned MMIO BAR if not strict-check,
Xen patchbot-unstable <=
|
|
|
|
|