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

Re: [Xen-devel] Re: [PATCH 4 of 4] Nested p2m: rework locking around nested-p2m flushes and updates



At 17:08 +0200 on 23 Jun (1308848939), Christoph Egger wrote:
> >+    /* If this p2m table has been flushed or recycled under our feet,
> >+     * leave it alone.  We'll pick up the right one as we try to
> >+     * vmenter the guest. */
> >+    if ( p2m->cr3 == nhvm_vcpu_hostcr3(v) )
> >+         rv = set_p2m_entry(p2m, L2_gpa>>  PAGE_SHIFT,
> >+                            page_to_mfn(maddr_to_page(L0_gpa)),
> >+                            0 /*4K*/, p2mt, p2ma);
> 
> The introduction of this check leads to this crash when the L2 guest
> initializes its third vcpu:

D'oh!

diff -r b40d4bcca0d7 xen/arch/x86/mm/hap/nested_hap.c
--- a/xen/arch/x86/mm/hap/nested_hap.c  Fri Jun 24 11:16:53 2011 +0100
+++ b/xen/arch/x86/mm/hap/nested_hap.c  Fri Jun 24 11:43:30 2011 +0100
@@ -100,7 +100,7 @@ nestedhap_fix_p2m(struct vcpu *v, struct
                   paddr_t L2_gpa, paddr_t L0_gpa,
                   p2m_type_t p2mt, p2m_access_t p2ma)
 {
-    int rv = 0;
+    int rv = 1;
     ASSERT(p2m);
     ASSERT(p2m->set_entry);
 

This is what comes of not being able to test things properly.  Can you
describe your test setup for me?  I'm having no luck getting
xen-on-debian-on-xen-on-debian to work. 

Cheers,

Tim

-- 
Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Principal Software Engineer, Xen Platform Team
Citrix Systems UK Ltd.  (Company #02937203, SL9 0BG)

_______________________________________________
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®.