Isaku Yamahata writes:
> Probably is_hvm_domain() check should be moved down.
> Could you please check the attached patches?
Umm.., we might be careful in changing lookup_domain_mpa()
because there is so much use of lookup_domain_mpa().
For example, vmx_hpw_miss() in xen/arch/ia64/vmx/vmx_fault.c:
============================================================
pte = lookup_domain_mpa(v->domain, gppa, NULL);
if (pte & _PAGE_IO) {
if (misr.sp)
panic_domain(NULL, "ld.s on I/O page not with UC attr."
" pte=0x%lx\n", data->page_flags);
============================================================
Windows often uses ld.s and the guest can be killed due to pte=-1.
For the present, could you apply the attached patch?
It must be harmless.
Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>
diff -r f2457c7aff8d xen/arch/ia64/xen/mm.c
--- a/xen/arch/ia64/xen/mm.c Fri Apr 25 20:13:52 2008 +0900
+++ b/xen/arch/ia64/xen/mm.c Fri May 09 20:04:40 2008 +0900
@@ -494,6 +494,10 @@
if (!pte) {
panic("gmfn_to_mfn_foreign: bad gpfn. spinning...\n");
}
+
+ if ((pte & _PAGE_IO) && is_hvm_domain(d))
+ return INVALID_MFN;
+
return ((pte & _PFN_MASK) >> PAGE_SHIFT);
}
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|