[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] xend, vt-d: do not reserve vtd_mem if iommu is not enabled



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1259761417 0
# Node ID a5501e2a80aadb3801669b8abc29286656062915
# Parent  28d967d08cd9398b924932b1c603537ab7f94c6f
xend, vt-d: do not reserve vtd_mem if iommu is not enabled

Signed-off-by: Dexuan Cui <dexuan.cui@xxxxxxxxx>
---
 tools/python/xen/xend/XendDomainInfo.py |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff -r 28d967d08cd9 -r a5501e2a80aa tools/python/xen/xend/XendDomainInfo.py
--- a/tools/python/xen/xend/XendDomainInfo.py   Wed Dec 02 13:39:07 2009 +0000
+++ b/tools/python/xen/xend/XendDomainInfo.py   Wed Dec 02 13:43:37 2009 +0000
@@ -2758,10 +2758,13 @@ class XendDomainInfo:
             # set memory limit
             xc.domain_setmaxmem(self.domid, maxmem)
 
-            # Reserve 1 page per MiB of RAM for separate VT-d page table.
-            vtd_mem = 4 * (self.info['memory_static_max'] / 1024 / 1024)
-            # Round vtd_mem up to a multiple of a MiB.
-            vtd_mem = ((vtd_mem + 1023) / 1024) * 1024
+            vtd_mem = 0
+            info = xc.physinfo()
+            if 'hvm_directio' in info['virt_caps']:
+                # Reserve 1 page per MiB of RAM for separate VT-d page table.
+                vtd_mem = 4 * (self.info['memory_static_max'] / 1024 / 1024)
+                # Round vtd_mem up to a multiple of a MiB.
+                vtd_mem = ((vtd_mem + 1023) / 1024) * 1024
 
             self.guest_bitsize = self.image.getBitSize()
             # Make sure there's enough RAM available for the domain

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.