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

Re: [Xen-devel] [PATCH 18/21] xenpaging: prevent page-out of first 16MB


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: Olaf Hering <olaf@xxxxxxxxx>
  • Date: Thu, 16 Dec 2010 17:59:42 +0100
  • Delivery-date: Thu, 16 Dec 2010 09:04:06 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Fri, Nov 26, Olaf Hering wrote:

> This is more a workaround than a bugfix:
> Don't page out first 16MB of memory.
> When the BIOS does its initialization process and xenpaging removes pages,
> crashes will occour due to lack of support of xenpaging.

While looking at this again, I came up with this change. Any idea whats
at 512K during BIOS startup?


 Subject: xenpaging: prevent page-out of gfn 0x80

Add a workaround for missing handling of paged-out pages during BIOS startup.
For some reason, only gfn 0x80 is affected.

(XEN) HVM3: HVM Loader
(XEN) traps.c:649:d3 Bad GMFN 80 (MFN ffffffffff) to MSR 40000000
(XEN) HVM3: Detected Xen v4.1
(XEN) HVM3: HVMLoader bug at util.c:604
(XEN) hvm.c:1085:d3 Triple fault on VCPU0 - invoking HVM system reset.

(XEN) HVM4: HVM Loader
(XEN) traps.c:649:d4 Bad GMFN 80 (MFN ffffffffff) to MSR 40000000
(XEN) io.c:194:d4 MMIO emulation failed @ 0018:9ffff: 00 6a 10 80 c4 82
(XEN) hvm.c:1085:d4 Triple fault on VCPU0 - invoking HVM system reset.

Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>

---
 tools/xenpaging/policy_default.c |    3 +++
 1 file changed, 3 insertions(+)

--- xen-unstable.hg-4.1.22548.orig/tools/xenpaging/policy_default.c
+++ xen-unstable.hg-4.1.22548/tools/xenpaging/policy_default.c
@@ -76,6 +76,9 @@ int policy_init(xenpaging_t *paging)
     /* Don't page out page 0 */
     set_bit(0, bitmap);
 
+    /* this is the trap page, disabled for the time being */
+    set_bit(0x80, bitmap);
+
  out:
     return rc;
 }

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


 


Rackspace

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