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

[Xen-changelog] [xen-4.1-testing] EPT/PoD: fix interaction with 1Gb pages


  • To: xen-changelog@xxxxxxxxxxxxxxxxxxx
  • From: Xen patchbot-4.1-testing <patchbot@xxxxxxx>
  • Date: Thu, 20 Sep 2012 17:22:16 +0000
  • Delivery-date: Thu, 20 Sep 2012 17:22:27 +0000
  • List-id: "Change log for Mercurial \(receive only\)" <xen-changelog.lists.xen.org>

# HG changeset patch
# User Jan Beulich <jbeulich@xxxxxxxx>
# Date 1348131090 -7200
# Node ID 35bb0a4c9bc0b2481e34a3394fb914674a45f6e0
# Parent  337fe1dc46d77269f39f6c2a6babf47a032d535a
EPT/PoD: fix interaction with 1Gb pages

When PoD got enabled to support 1Gb pages, ept_get_entry() didn't get
updated to match - the assertion in there triggered, indicating that
the call to p2m_pod_demand_populate() needed adjustment.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Tim Deegan <tim@xxxxxxx>
xen-unstable changeset: 25757:3468a834be8d
xen-unstable date: Thu Aug 16 16:38:05 UTC 2012
---


diff -r 337fe1dc46d7 -r 35bb0a4c9bc0 xen/arch/x86/mm/hap/p2m-ept.c
--- a/xen/arch/x86/mm/hap/p2m-ept.c     Thu Sep 20 10:50:39 2012 +0200
+++ b/xen/arch/x86/mm/hap/p2m-ept.c     Thu Sep 20 10:51:30 2012 +0200
@@ -542,13 +542,13 @@ static mfn_t ept_get_entry(struct p2m_do
             }
 
             /* Populate this superpage */
-            ASSERT(i == 1);
+            ASSERT(i <= 2);
 
             index = gfn_remainder >> ( i * EPT_TABLE_ORDER);
             ept_entry = table + index;
 
-            if ( !ept_pod_check_and_populate(p2m, gfn,
-                                             ept_entry, 9, q) )
+            if ( !ept_pod_check_and_populate(p2m, gfn, ept_entry,
+                                             i * EPT_TABLE_ORDER, q) )
                 goto retry;
             else
                 goto out;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
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®.